Robot control system, robot control method and output control method

ABSTRACT

A robot control system detects a position and a direction of each user by a plurality of range image sensors provided in an exhibition hall. A central controller records an inspection action after a user attends the exhibition hall until the user leaves to generate an inspection action table. When the user attends again, the central controller reads a history of inspection action from the inspection action table. Then, the central controller chooses from an utterance content table an utterance content containing a phrase that mentions the inspection action included in the history at a time of last time attendance, determines the utterance content, and makes a robot output the determined utterance content to the user.

CROSS REFERENCE OF RELATED APPLICATION

The disclosures of Japanese Patent Application Nos. 2013-202373,2013-202375 and 2013-202688 are incorporated herein by reference.

BACKGROUND OF THE INVENTION

Field of the Invention

The present invention relates to a robot control system, robot controlmethod and output control method, and more specifically, a robot controlsystem, robot control method and output control method, providing anattendant with guidance information such as an explanation about anexhibition as an utterance content.

Description of the Related Art

An example of a background art is disclosed in, Masahiro Shiomi,Takayuki Kanda, Hiroshi Ishiguro and Norihiro Hagita, InteractiveHumanoid Robots for a Science Museum, IEEE Intelligent Systems, vol. 22,no. 2, pp. 25-32, March/April 2007 (Non-patent literature 1). In thenon-patent literature 1, a robot that shows an inside of a sciencemuseum explains to a user an exhibition that the user has not seen yetfrom an inspection history in the science museum.

Furthermore, another example of the background art is disclosed in, M.Shiomi, T. Kanda, D. F. Glas, S. Satake, H. Ishiguro and N. Hagita,Field Trial of Networked Social Robots in a Shopping Mall, IEEE/RSJ Int.Conf. on Intelligent Robots and Systems (IROS2009), pp. 2846-2853, 2009(Non-patent literature 2). According to the non-patent literature 2, arobot approaches a user and provides the user with service correspondingto that place.

In addition, a still another example of the background art is disclosedin, Japanese patent application laying-open No. 2010-231470 [B25J 13/00,G06Q 50/00] laid-open on Oct. 4, 2010 (Patent literature 1). In thepatent literature 1, a broader action of a human being who moves at ashopping mall is predicted, and a robot provides with recommendationinformation the human being that the broader action is predicted.

In addition, a further example of the background art is disclosed in,Japanese patent application laying-open No. 2011-224737 [B25J 9/22, B25J5/00] laid-open on Nov. 10, 2011 (Patent literature 2). For example,research on a robot that guides an exhibition, etc. is advanced. Then,in the patent literature 2, there is disclosed an invention of a robotthat has two arm portions, and performs an operation for pointing at anobject with either one of arm portions.

In addition, a further example of the background art is disclosed in,Japanese patent application laying-open No. 2011-20223 [B25J 13/00]laid-open on Feb. 3, 2011 (Patent literature 3). In the patentliterature 3, there is disclosed a technology that a laser display isprovided other than an explanation robot for an exhibition, and aguidance voice about the exhibition that the laser is irradiated isreproduced.

Then, the other example of the background art is disclosed in, Japanesepatent No. 5077077 [B25J 13/08, B25J 5/00] registered on Sep. 7, 2012(laid-open on Dec. 10, 2009) (Patent literature 4). In the patentliterature 4, there is disclosed an invention about a robot that movesto a position for explaining an exhibition without interrupting the gazeof a looker that is turned to the exhibition.

However, although the non-patent literature 1 is effective as a guidingrobot that gets the user to see as many exhibitions as possible, sincerestricted to guidance on that place, the robot may not necessarily givean appropriate explanation for the user.

Moreover, in the non-patent literature 2, since a plurality of users whovisit the same place are not necessarily interested in the same thing,there is possibility that the robot provides erroneous service to theusers. Furthermore, in the patent literature 1, since a plurality ofhuman beings that the same broader actions are predicted may not beinterested in the same thing, it is thought that the robot provideserroneous recommendation information. Accordingly, the robot of thenon-patent literature 2 or the patent literature 1 cannot provide theinformation that is suitable for the person getting interested in theexhibition in the exhibition hall that the exhibitions are placed.

Moreover, in the patent literatures 2 to 4, when the robot thatautonomously moves points at the object for guidance, there is a casewhere the gaze of a person who receives the guidance cannot be guidedeffectively.

SUMMARY OF THE INVENTION

Therefore, it is a primary object of the present invention to provide anovel robot control system, robot control method and output controlmethod.

It is another object of the present invention to provide a robot controlsystem and robot control method, capable of providing appropriateguidance information.

It is a still another object of the present invention to provide a robotcontrol system and output control method, capable of providing anutterance content appropriately.

It is the other object of the present invention capable to provide arobot control system, capable of guiding more effectively a gaze of aperson who receives guidance.

A first aspect of the present invention is a robot control systemincluding a robot that outputs an utterance content to a user in anexhibition hall placing an exhibition, comprising: a recording modulethat records an inspection action of a user at a time of attendance ofthe user as a history; and a first output module that makes the robot,when the user attends again, output an utterance content that isdetermined based on the history.

A second aspect of the present invention is a robot control methodperformed by a computer of a robot control system including a robot thatoutputs a utterance content to a user in an exhibition hall placing anexhibition, comprising steps of: recording an inspection action of auser at a time of attendance of the user as a history; and making therobot, when the user attends again, output an utterance content that isdetermined based on the history.

A third aspect of the present invention is a robot control systemincluding a robot capable of autonomously moving in a space that anexhibition is placed, comprising: an acquiring module that acquires aposition and a direction of a user in the space; a first determiningmodule that determines whether the user enters a predetermined rangecorresponding to the exhibition; a second determining module thatdetermines whether the direction of the user turns to the exhibition,and an outputting module that makes the robot output an utterancecontent about the exhibition when it is determined that the user entersthe predetermined range and that the direction of the user turns to theexhibition.

A fourth aspect of the present invention is an output control method ina robot control system including a robot capable of autonomously movingin a space that an exhibition is placed, wherein a processor of therobot control system performing: an acquiring step that acquires aposition and a direction of a user in the space; a first determiningstep that determines whether the user enters a predetermined rangecorresponding to the exhibition; a second determining step thatdetermines whether the direction of the user turns to the exhibition,and an outputting step that makes the robot output an utterance contentabout the exhibition when it is determined that the user enters thepredetermined range and that the direction of the user turns to theexhibition.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a view showing an example of an exhibition hall that a robotcontrol system of one embodiment according to the present invention isapplied.

FIG. 2 is a view showing an example of a plan view (map) of theexhibition hall shown in FIG. 1.

FIG. 3 is a view showing an outline of the robot control system of oneembodiment according to the present invention.

FIG. 4 is a block diagram showing an example of electric structure of acentral controller shown in FIG. 3.

FIG. 5 is a view that an appearance of an example of a robot used in theembodiment shown in FIG. 3 is viewed from the front.

FIG. 6 is a block diagram showing an example of electric structure ofthe robot shown in FIG. 5.

FIG. 7 is a view showing an example of a memory map of a memory of thecentral controller shown in FIG. 4.

FIG. 8 is a view showing an example of a user management table shown inFIG. 7.

FIG. 9 is a view showing an example of an inspection action table shownin FIG. 7.

FIG. 10 is a view showing an example of an utterance content table shownin FIG. 7.

FIG. 11 is a flowchart showing an example of an operation of recordprocessing of a processor of the central controller shown in FIG. 4.

FIG. 12 is a flowchart showing an example of an operation of robotaction determination processing of the processor of the centralcontroller shown in FIG. 4.

FIG. 13 is a block diagram showing a further example of the electricstructure of the central controller shown in FIG. 1.

FIG. 14 is a view showing a further example of a plan view (map) of theexhibition hall shown in FIG. 1.

FIG. 15 is a view showing an example of structure of an utterancecontent database (DB) shown in FIG. 13.

FIG. 16 is a view showing a further example of a memory map of thememory of the central controller shown in FIG. 4.

FIG. 17 is a flowchart showing an example of output control processingof the processor of the central controller shown in FIG. 4.

FIG. 18 is a view showing an example of structure of a user DB shown inFIG. 13.

FIG. 19 is a view showing a further example of structure of theutterance content DB shown in FIG. 13.

FIG. 20 is a flowchart showing an example of a part of output controlprocessing in a further embodiment of the processor of the centralcontroller shown in FIG. 4.

FIG. 21 is a flowchart showing an example of another part of the outputcontrol processing in the further embodiment of the processor of thecentral controller shown in FIG. 4, following FIG. 20.

FIG. 22 is a view showing an example of an appearance configuration of arobot 501 of the other embodiment.

FIG. 23 is a view showing an example of functional structure provided onthe robot 501.

FIG. 24 is a view showing definition of a yaw direction, a pitchdirection and a roll direction.

FIG. 25 is a view enlargedly showing a hand portion 540.

FIG. 26 is a view showing functional structure of a control portion 590in detail.

FIG. 27 is a view showing a movement principle of the robot 501.

FIG. 28 is a view showing a manner that the robot 501 avoidsinterference with a person.

FIG. 29 is a view showing processing for calculating by an interferencecalculation unit 594A a standing position.

FIG. 30 is a view showing an example of a posture at a time of the robot501 pointing at an object.

FIG. 31 is a view showing an example of a posture at a time of the robot501 pointing at an object.

FIG. 32 is a view showing a manner that the robot 501 continues turningan extending direction of an index finger portion 543 toward a positionOB1.

FIG. 33 is a view showing another example of the posture at a time ofthe robot 501 pointing at an object.

FIG. 34 is a view schematically showing an operation performed by therobot 501 when pointing at an object.

FIG. 35 is a view schematically showing an operation performed by therobot 501 when pointing at an object.

FIG. 36 is a view showing processing by a wrist direction calculationunit 594Ea.

FIG. 37 is a view showing a manner that an arm having to point isdetermined when the position OB1 exists in an overlapping area of angleranges AR and AL.

FIG. 38 is a view showing an example of distribution tendency at a timeof the waist/arm distribution portion 594Eb distributing a twist amount.

FIG. 39 is an example of a flowchart showing a flow of processingperformed by the control portion 590.

FIG. 40 is a view showing a manner that the robot 501 guides a person Hto a suitable area WA.

FIG. 41 is an example of a flowchart showing a flow of the processingthat is performed when the robot 501 guiding the person H to thesuitable area WA.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS First Embodiment

With reference to FIG. 1, a robot control system 100 of this embodimentis used in a space (environment) such as an exhibition hall thatexhibitions E are placed. In the exhibition hall, a person (a user orattendant) and a robot 10 can move arbitrarily, and a plurality of rangeimage sensors 12 (12 a, 12 b, - - - ) for detecting positions anddirections of those bodies of all the users and the robots in thisexhibition hall are provided on a ceiling.

The robot 10 is also an interaction-oriented robot (communicationrobot), and having a function to perform a communication action with acommunication object such as a user with using a body action such as agesture and/or a voice. Furthermore, the robot 10 offers, as part of thecommunication, service of outputting an explanation (utterance content)about the exhibition E to a user and guiding the exhibition hall. Ifrequired to providing the service, the robot 10 autonomously moves in aninside of the exhibition hall, or operates based on action instructionsapplied by a central controller 14.

Furthermore, although the space of the embodiment is the exhibition hallthat the exhibitions E are placed, not limited to this, the robotcontrol system 100 is usable in a shopping mall, a floor of a company, amuseum, an attraction hall, etc.

In addition, although only one user is shown in FIG. 1 for simplifying,much more users may be in the exhibition hall. Similarly, although onlyone robot 10 is shown, the robot control system 100 can simultaneouslycontrol two or more robots 10.

FIG. 2 is a map showing planar positions of such an exhibition hall(space). With reference to FIG. 2, a plurality (three, in thisembodiment) of exhibitions E (E1, E2, E3) are placed in the exhibitionhall. An entrance is formed in the exhibition hall and a tag reader 13(FIG. 3, FIG. 4) for reading data of an RFID tag is installed in theentrance. For example, a user enters the exhibition hall after makingthe tag reader read the RFID tag himself/herself owns. A user ID isstored in the RFID tag, and the tag reader reads the user ID from theRFID tag, and sends the user ID to the central controller 14 (FIG. 3,FIG. 4).

In addition, an arbitrary one can be used as an RFID tag. However, sincethis embodiment intends to provide appropriate guidance information (tooutput an utterance content, for example) with reference to a history ofthe last time inspection action when the same attendant comes the secondtime and afterwards, it is necessary in this embodiment to specify theattendant (user) individually. Therefore, as a RFID tag to be used inthe embodiment, a tag that is peculiar to each individual and installedin a member card, portable phone (including smartphone), car key or thelike, for example, can be considered.

However, a user individual may be specified by providing a camera at theentrance of the exhibition hall and by performing image processing of auser's face image that is photographed by the camera. Then, a troublemaking a user show a RFID tag is avoidable.

Each of explainable ranges A1, A2 and A3 is set for each correspondingexhibition E1, E2 and E3 in the exhibition hall, respectively. Theexplainable range A means such a range that if the user enters in thisrange, the robot 10 can provide the user with the explanation (guidanceinformation) about the exhibition. Coordinates data such as a position,shape, size, etc. of each of the explainable ranges A1, A2 and A3 arestored in advance as map data 332 described later (FIG. 7) together withcoordinates data such as a position of each of center points C1, C2 andC3, shape, size, etc. of each of corresponding exhibitions E1, E2 andE3.

In addition, in this embodiment, when the user exists in the explainablerange Ai of the exhibition Ei, it is assumed that the user inspects theexhibition Ei.

With reference to FIG. 3, the central controller 14 of the robot controlsystem 100 detects, at every predetermined time period (one second, forexample), a position of a user who moves arbitrarily and a direction ofthe user, by the range image sensors 12 a, 12 b, - - - . Furthermore,the central controller 14 performs a wireless communication with therobot 10 through a network 1000, and if needed, controls an action orbehavior of the robot 10. A user ID is applied to the user whom positionis detected in the space.

FIG. 4 is a block diagram showing electric structure of the centralcontroller 14. With reference to FIG. 4, the central controller 14includes the range image sensors 12 a and 12 b, the tag reader 13, aprocessor 16, etc. The processor 16 may be called a computer or CPU(Central Processing Unit). In addition to the range image sensor 12 aand the range image sensor 12 b mentioned previously, other range imagesensors 12 are connected to the processor 16. In addition, when therange image sensors 12 a and 12 b do not need to be distinguished,simply called the “range image sensor 12.”

A memory 18 and a communication LAN board 20 are connected to theprocessor 16.

The range image sensor 12 irradiates a light such as an infrared lightor laser, and captures a light reflected from the object (reflectedlight) by an optical sensor such as a CCD (Charge Coupled Device)sensor, etc. The range image sensor 12 measures an actual distance tothe object by measuring a time until the reflected light returns foreach pixel. The product called Xtion (registered trademark) made by ASUS(registered trademark) is adopted as the range image sensor 12 in theembodiment. In addition, in other embodiments, it is possible to useKinect (registered trademark) sensor of Microsoft (registeredtrademark), three-dimensional range image sensor D-IMager (registeredtrademark) of Panasonic (registered trademark), etc. as the range imagesensor 12. Such a kind of sensor may be called a three-dimensionaldistance measurement sensor, 3D scanner, etc.

The processor 16 acquires three-dimensional information of the target(user) through such the range image sensor 12. A shape of the target anda distance to the target are included in the three-dimensionalinformation from the range image sensor 12. For example, if sensing ofthe user is performed by the range image sensor 12 provided on theceiling, shapes of a head and both shoulders of the user at a time ofviewing the user from the top, and distances to the head and to the bothshoulders are acquired as three-dimensional information.

Thirty five (35) range image sensors 12, for example are installed inthe exhibition hall at predetermined positions (already-known), and theprocessor 16 acquires the three-dimensional information from each ofthem, and can calculate the position (position coordinates (x, y, z) ofa feature point such as the center of gravity, for example) of the userin the three-dimensional space (in a world coordinates system) and thedirection of the user (direction of feature portions such as a head andboth shoulders, for example).

In addition, in other embodiments, the position and the direction of theuser may be detected not using the range image sensor 12 but usingtwo-dimensional or three-dimensional LRF (Laser Range Finder).

The memory 18 may include a ROM (Read Only Memory), a HDD (Hard DiskDrive), and a RAM (Random Access Memory). A control program forcontrolling an operation of the central controller 14 is stored inadvance in the ROM and the HDD. Furthermore, the RAM is also used as aworking memory and a buffer memory for the processor 16.

The communication LAN board 20 is constructed by a DSP(s), for example,and applies send data that is given from the processor 16 to a wirelesscommunication device 22 that in turn sends the send data to the robot 10through a network 1000. For example, the send data is data required forautonomous movement of the robot 10, data required for providing theservice, a signal (command) for instructing action instructions to therobot 10, etc. Furthermore, the communication LAN board 20 receives datavia the wireless communication device 22, and applies received data tothe processor 16.

In addition, in other embodiments, the central controller 14 may beprovided with an output device such as a display and an input devicesuch as a mouse, keyboard, etc.

FIG. 5 is a front view showing an appearance of the robot 10 of thisembodiment. With reference to FIG. 5, the robot 10 includes a truck 40,and two wheels 42 and one trailing wheel 44 are provided on anundersurface of the truck 40 for making the robot 10 autonomously move.The two wheels 42 are independently driven by a wheel motor 46 (see FIG.6), and therefore, it is possible to make the truck 40, that is, therobot 10 move in an arbitrary direction of front and rear, right andleft. Furthermore, the trailing wheel 44 is an auxiliary wheel thatassists the wheels 42. Accordingly, the robot 10 can move by autonomouscontrol in the inside of the space that the robot 10 is arranged.

On the truck 40, a sensor attachment panel 48 of a cylinder shape isprovided, and many infrared distance sensors 50 are attached to thesensor attachment panel 48. These infrared distance sensors 50 measuredistances with the objects (a user, an obstacle, etc.) around the sensorattachment panel 48, i.e., the robot 10.

In addition, although the infrared distance sensor is used as a distancesensor in this embodiment, instead the infrared distance sensor, an LRF,ultrasonic distance sensor, milliwave radar, etc. may be used.

On the sensor attachment panel 48, a body 52 is provided to standstraight. Furthermore, the infrared distance sensor 50 mentioned aboveis further provided in a front upper center portion (position equivalentto a breast of the user (human being)) of the body 52 to measure adistance with mainly the user in front of the robot 10. Furthermore, asupport 54 extending from an approximately center of a side upper endportion is provided in the body 52, and an omnidirectional camera 56 isprovided on the support 54. The omnidirectional camera 56 is forphotographing a circumference of the robot 10, and distinguished overeye cameras 80 described later. As the omnidirectional camera 56, acamera using a solid-state image sensing device such as a CCD or CMOS(Complementary Metal Oxide Semiconductor) is employable, for example. Inaddition, the installation positions of these infrared distance sensors50 and the omnidirectional camera 56 are not limited to the partsconcerned, but may be changed suitably.

An upper arm 60R and an upper arm 60L are provided on the both sideupper end portions (positions equivalent to a shoulder of the humanbeing (user)) of the body 52 by a shoulder joint 58R and a shoulderjoint 58L, respectively. Although illustration is omitted, the shoulderjoint 58R and the shoulder joint 58L have three degrees of freedom ofthree axes perpendicularly intersecting with each other, respectively.That is, the shoulder joint 58R can control angles of the upper arm 60Raround each of the three axes perpendicularly intersecting with eachother. A certain axis (yaw axis) of the shoulder joint 58R is an axisparallel to a longitudinal direction (or axis) of the upper arm 60R, andother two axes (a pitch axis and a roll axis) are axes perpendicularlyintersecting to that axis from respective different directions.Similarly, the shoulder joint 58L can control angles of the upper arm60L around each of the three axes perpendicularly intersecting with eachother. A certain axis (yaw axis) of the shoulder joint 58L is an axisparallel to a longitudinal direction (or axis) of the upper arm 60L, andother two axes (a pitch axis and a roll axis) are axes perpendicularlyintersecting to that axis from respective different directions.

Furthermore, an elbow joint 62R and an elbow joint 62L are provided atrespective tip ends of the upper arm 60R and the upper arm 60L. Althoughillustration is omitted, the elbow joint 62R and the elbow joint 62Lhave one degree of freedom of one axis, respectively, and can control anangle of a forearm 64R and a forearm 64L around this axis (pitch axis).

A hand 66R and a hand 66L are provided at tip ends of the forearm 64Rand the forearm 64L, respectively. Each hand 66 is provided with athumb, an index finger (user pointing finger), a middle finger, a thirdfinger and a little finger like a user (human being). A knuckle (notshown) is provided at a root of the thumb and a root of the index fingerof the hand 66, thereby to move independently. Furthermore, the middlefinger, the third finger and the little finger are uniformly molded, anda knuckle is provided at a root thereof like each of the thumb and theindex finger. Then, the middle finger, the third finger and the littlefinger can be moved collectively.

Furthermore, a wrist is provided at a root of each of the hand 66R andthe hand 66L. Although illustration is omitted, each of the wrists hasone degree of freedom of one axis, and can control an angle of each ofthe hand 66R and the hand 66L around the axis of this axis (yaw axis).Furthermore, although illustration is omitted, the knuckles of thethumb, the index finger and three remaining fingers (the middle finger,the third finger and the little finger) of the hand 66R and the hand 66Leach has one degree of freedom, and can control an angle of each of thefingers around this axis.

Accordingly, the robot 10 becomes possible to perform pointing at anarbitrary object by the hand 66 in a pointing state that the thumb, themiddle finger, the third finger and the little finger are bent, orpointing at an arbitrary object using entirely the upper arm 60, theforearm 64 and the hand 66 in a state that the fingers are opened.Therefore, the upper arm 60, the forearm 64 and the hand 66 may becalled a pointing device or pointing member.

In addition, in other embodiments, a hand 66 that each finger isindependent like a human being, and has knuckles of the same number asthose of the fingers of the human being may be adopted. In such a case,the robot 10 becomes possible to perform not only pointing but alsoholding a thing with fingers, or communication by sign language.

Furthermore, although illustration is omitted, contact sensors 68(collectively shown in FIG. 5) are provided on the front of the truck40, portions equivalent to the shoulders including the shoulder joint58R and the shoulder joint 58L, the upper arm 60R, the upper arm 60L,the forearm 64R, the forearm 64L, the hand 66R and the hand 66L,respectively. The contact sensor 68 of the front of the truck 40 detectsa contact of the user to the truck 40 or other obstacles. Accordingly,if the robot 10 is brought into contact with an obstacle during ownmovement, the robot can detect that, and can stop the drive of the wheel42 immediately thereby to do the quick stop of the movement of the robot10. Furthermore, the other contact sensors 68 detect whether anythingtouches to respective parts concerned. In addition, the installationpositions of the contact sensors 68 are not be limited to the partsconcerned, and the contact sensors 68 may be installed at properpositions (positions equivalent to the breast, the abdomen, the side,the back and the waist of the human being).

A head joint 70 is provided in an upper center (position equivalent to ahead of the human being) of the body 52, and a head 72 is furtherprovided thereon. Although illustration is omitted, the head joint 70has three degrees of freedom of three axes, and angles around the threeaxes can be controlled. A certain axis (yaw axis) is an axis that goesright above the robot 10 (vertically upward), and the other two axes (apitch axis and a roll axis) are axes perpendicularly intersecting thisaxis from different directions, respectively.

A speaker 74 is provided in a position equivalent to a mouth of thehuman being on the head 72. The speaker 74 is used for takingcommunication by the robot 10 with using a voice or sound with the useraround the robot 10, or for outputting an utterance content describedlater by the robot 10. Furthermore, a microphone 76R and a microphone76L are provided in positions equivalent to ears of the human being.Hereinafter, the right microphone 76R and the left microphone 76L may becollectively called microphone 76. The microphone 76 takes in sounds ofthe circumference, especially a voice of the user who is a target thatthe robot performs communication. Furthermore, an eyeball portion 78Rand an eyeball portion 78L are provided in positions equivalent to eyesof the human being. The eyeball portion 78R and the eyeball portion 78Linclude an eye camera 80R and an eye camera 80L, respectively.Hereinafter, the right eyeball portion 78R and the left eyeball portion78L may be collectively called eyeball portion 78. Furthermore, theright eye camera 80R and the left eye camera 80L may be collectivelycalled eye camera 80.

The eye camera 80 photographs a face and other parts of the user whoapproaches the robot 10 and objects close to the robot 10, etc., andfetches an image signal corresponding thereto. In addition, as the eyecamera 80, a camera similar to the above-described omnidirectionalcamera 56 may be used. For example, the eye camera 80 is fixed withinthe eyeball portion 78, and the eyeball portion 78 is attached to apredetermined position within the head 72 via an eyeball support (notshown). Although illustration is omitted, the eyeball support has twodegrees of freedom of two axes, and an angle around each of the axes canbe controlled. For example, one of the two axes is an axis (yaw axis) ofa direction that goes above the head 72, and the other is an axis (pitchaxis) of the direction that goes in a direction perpendicularlyintersecting with one axis and perpendicularly intersecting with adirection that the front side (face) of the head 72 turns. When theeyeball support rotates around each of the two axes, the tip (front)side of the eyeball portion 78 or eye camera 80 is displaced, and thecamera axis, i.e., a direction of the gaze is moved. In addition, theinstallation positions of the above-mentioned speaker 74, the microphone76, and the eye camera 80 are not limited to the parts concerned, butthese may be installed in proper positions.

Thus, the robot 10 in this embodiment has twenty five (25) degrees offreedom in total of two independent drive of the wheel 42, three degreesof freedom of the shoulder joint 58 (six degrees of freedom at right andleft, respectively), one degree of freedom of the elbow joint 62 (twodegrees of freedom at right and left, respectively), one degree offreedom of the wrist (two degrees of freedom at right and left,respectively), one degree of freedom of the knuckle (six degrees offreedom with each finger at right and left, respectively), three degreesof freedom of the head joint 70 and two degrees of freedom of theeyeball support (four degrees of freedom at right and left,respectively).

FIG. 6 is a block diagram showing electric structure of the robot 10.With reference to this FIG. 6, the robot 10 includes a processor 90. Theprocessor 90 is also called a microcomputer or CPU, and is connectedwith, via a bus 92, a memory 94, a motor control board 96, a sensorinput/output board 98, an audio input/output board 110 and acommunication LAN board 130.

The memory 94 includes a ROM and a RAM. A control program forcontrolling an operation of the robot 10 is stored in advance in theROM. For example, a detection program for detecting outputs of therespective sensors (sensor information), a communication program forsending and receiving necessary data, commands, etc. with an externalcomputer (central controller 14), etc. are stored. Furthermore, the RAMis used as a working memory and a buffer memory for the processor 90.

The motor control board 96 is constructed by DSP(s), for example, andcontrols the drive of the motor of each axis of the arms, the headjoint, the eyeball portions, etc. That is, the motor control board 96receives control data from the processor 90, and controls rotationangles of two motors (FIG. 6 collectively shows as the “right eyeballmotor 112”) that control respective angles of two axes of the righteyeball portion 78R. Similarly, the motor control board 96 receivescontrol data from the processor 90, and controls rotation angles of twomotors (FIG. 6 collectively shows as the “left eyeball motor 114”) thatcontrol respective angles of two axes of the left eyeball portion 78L.Furthermore, the motor control board 96 receives control data from theprocessor 90, and controls rotation angles of four motors in total (FIG.6 collectively shows as the “right arm motor 116”) of three motors thatcontrol respective angles of three perpendicularly intersecting axes ofthe shoulder joint 58R and one motor that controls an angle of the elbowjoint 62R. Similarly, the motor control board 96 receives control datafrom the processor 90, and controls rotation angles of four motors intotal (FIG. 6 collectively shows as the “left arm motor 1186”) of threemotors that control respective angles of three perpendicularlyintersecting axes of the shoulder joint 58L and one motor that controlsan angle of the elbow joint 62L.

Furthermore, the motor control board 96 receives control data from theprocessor 90, and controls rotation angles of four motors in total (FIG.6 collectively shows as the “right hand motor 120”) of one motor thatcontrols an angle of the right wrist and three motors that controlrespective angles of three knuckles in the right hand 66R. Similarly,the motor control board 96 receives control data from the processor 90,and controls rotation angles of four motors in total (FIG. 6collectively shows as the “left hand motor 122”) of one motor thatcontrols an angle of the left wrist and three motors that controlrespective angles of three knuckles in the left hand 66L.

Here, the rotation of the motor is not necessarily directly reflectedfor the angle of the knuckle, and the angle of the knuckle is controlledby a fluid pressure cylinder that operates by the rotation of the motor.More specifically, a piston that moves an operation fluid isaccommodated freely movably in the fluid pressure cylinder, and theposition of this piston is changed by the rotation of the motor. Then,the angle of the knuckle changes according to the motion of the fluidpressure cylinder. In addition, since the hand of the robot using afluid pressure cylinder is described in detail in Japanese patentapplication laying-open No. 2013-96514, for example, a detaileddescription is omitted here by referring to No. 2013-96514.

Furthermore, the motor control board 96 receives control data from theprocessor 90, and controls rotation angles of three motors (FIG. 6collectively shows as the “head motor 124”) that control respectiveangles of three perpendicularly intersecting axes of the head joint 70.

Then, the motor control board 96 receives control data from theprocessor 90, and controls rotation angles of two motors (FIG. 6collectively shows as the “wheel motor 46”) that drive the wheel 42. Inaddition, in this embodiment, in order to simplify the control, astepping motor (namely, pulse motor) is used for the motor except thewheel motor 46. However, as similar to the wheel motor 46, directcurrent motors may be used. In addition, the actuators that drive thebody portions of the robot 10 may be suitably changed not only in themotor with the power source of current. For example, an air actuator,etc. may be applied in other embodiments.

Like the motor control board 96, the sensor input/output board 98 isconstructed by DSP(s), and fetches the signal from each sensor, andapplies the signal to the processor 90. That is, data concerning areflection time from each of the infrared distance sensors 50 is inputto the processor 90 through the sensor input/output board 98.Furthermore, an image signal from the omnidirectional camera 56 is inputto the processor 90 after subjected to predetermined processing by thesensor input/output board 98 as required. An image signal from the eyecamera 80 is similarly input to the processor 90. Furthermore, signalsfrom the above-described plurality of contact sensors 68 (FIG. 6 showsthe “contact sensor 68” collectively) are applied to the processor 90via the sensor input/output board 98.

Similarly, the audio input/output board 110 is also constructed byDSP(s), and a sound or voice according to sound synthesis data appliedfrom the processor 90 is output from the speaker 74. Furthermore, anaudio input from the microphone 76 is applied to the processor 90 viathe audio input/output board 110.

The communication LAN board 130 is constructed by DSP(s), for example,and applies the send data from the processor 90 to the wirelesscommunication device 132 that in turn sends the send data to theexternal computer (central controller 14) via the network 1000.Furthermore, the communication LAN board 130 receives data via thewireless communication device 132, and applies received data to theprocessor 90. For example, the send data may include the image data ofthe circumference that is photographed by the omnidirectional camera 56and the eye camera 80.

FIG. 7 is a view showing an example of a memory map of the memory 18 inthe central controller 14 shown in FIG. 4. As shown in FIG. 7, thememory 18 includes a program storage area 302 and a data storage area304. The program storage area 302 is stored with a recording program 310that records a history of inspection action of each user who attends theexhibition hall, an action determination program 312 for determining anoperation of each robot, etc. in addition to an operating system (OS) asprograms for operating the central controller 14. In addition, althoughillustration is omitted, in this program storage area 302, a program fordetecting a position and a direction of the user from outputs of theabove-described range image sensors 12, etc. are included.

A user information buffer 330 is provided in the data storage area 304,and the data storage area 304 is stored with map data 332. For example,the position and the direction of the user that are obtained throughcalculation based on three-dimensional information are temporarilystored in the user information buffer 330 as user information.

The map data 332 includes map data indicating a plan view as shown inFIG. 2. The map data includes the above-described various coordinatesdata such as information (coordinates) of the exhibitions E and thepredetermined ranges corresponding to the exhibitions E, for example.

In addition, although illustration is omitted, buffers that temporarilystores results of various calculations, other counters, flags, etc.required for an operation of the central controller 14 are provided inthe data storage area 304.

A user management table 334 is shown in FIG. 8, for example, andrecords, for each user, the number of attendance times, an attendanceflag that indicates whether the user is during the attendance, and asdescribed above, it is detected that the user attends by reading theRFID when entering from the entrance, and it is detected that the userconcerned leaves by reading the RFID when exiting from the entrance.When a user comes, the number of attendance times is incremented and theattendance flag is set. When a user leaves, the attendance flag isreset.

An inspection action table 336 is shown in FIG. 9, for example, andrecords, for each user, an inspection time period by the user withrespect to each of the exhibitions E1, E2 and E3 for every attendance.Although FIG. 9 shows the inspection action table about the user AAA,for example, a table same for other users is provided. This inspectionaction table 336 as well as the previous user management table 334 isformed in the memory 18 when a corresponding user attends first, and thenumber of attendance times is incremented (updated) for every subsequentattendance. Then, it is recorded for every attendance, which exhibitionis inspected by which user in how long time period. Along with that, amoving locus that shows how the user moves in the inside of theexhibition hall is recorded in the inspection action table 336. Themoving locus is recordable by acquiring a position of the user for everyΔt seconds, for example. However, illustration of the moving locus isomitted in FIG. 9 since it becomes complicated.

In an utterance content table 338, as shown in FIG. 10, data ofutterance contents is recorded for each content number, for example.Since these utterance contents are peculiar to the exhibition hall orthe exhibitions, the utterance content table 338 is set up (prepared) inadvance at every time that the exhibition hall and/or the exhibitionsare changed. In this embodiment, as an example, the content number 1 isan utterance content as “Although it seems you did not see very muchlast time, please see slowly this time”, the content number 2 is anutterance content as “Although it seems you did see the exhibition Eiwell last time, please also see the exhibition Ej this time”, thecontent number 3 is an utterance as “Although it seems you did seevarious exhibitions last tune, please see thoroughly this time also”,and the content number 4 is an utterance as “Since there is a newexhibition Enew, please see it.”

As described above, each of the content numbers 1 to 3 is an utterancecontent that refers to the inspection action at the time of the lasttime attendance of the user concerned, and then, guides an inspectionthis time. However, an utterance content is not limited to the utterancecontent that mentions the inspection action at the time of the last timeattendance in this way, and may be an utterance that is not directlyrelevant to the last time inspection action but is relevant to thehistory of the past inspection action like the content number 4, forexample.

In the robot control system 100 of this embodiment, the utterancecontent is chosen from the utterance content table 338 based on thehistory of inspection action of the user, and the chosen utterancecontent is provided to the user as guidance information.

In such the robot control system 100, the central controller 14 performsrecord processing of FIG. 11 if the tag reader 13 that is provided atthe entrance (FIG. 2) of the exhibition hall reads the RFID tag of anattendant.

If the read ID data is input to the central controller 14 by the tagreader 13, in a first step S1, the central controller 14 determineswhether the attendant at that time is the first time attendance withreferring to the user management table 334 of FIG. 8, for example. Forexample, if there is no record in the user management table 334, it ispossible to determine that this time attendance is the first attendancefor the user concerned. Then, if “YES” at the step S1 in a next step S3,the central controller 14 registers the user Ui into the user managementtable 334 and the inspection action table 336, and sets the attendanceflag of the user in the user management table 334.

When “NO” is determined at the step S1, that is, if it is determinedthat the user Ui is attendance for the second time and afterwards, in anext step S5, the central controller 14 updates the user managementtable 334 and the inspection action table 336. In detail, in this stepS5, the number of the attendance times in the user management table 334is updated, and the attendance flag is set. Furthermore, in the step S5,a storage area that is to record therein data of the attendance at thistime is secured in the inspection action table 336. For example, if theuser AAA is the second time attendance, a storage area of “number ofattendance times=2” in FIG. 9 is secured.

After the step S3 or S5, the central controller 14 acquires a positionPi (=x, y, θ) of the user Ui in a step S7. More specifically, thecentral controller 14 can receive distance information from each rangeimage sensor 12, and calculate the position of the user based on thedistance information and information on the installation positionalready known of each range image sensor. In addition, an angle θ is anangle that indicates a direction of the user, and is represented by anangle to the horizontal in the plan view of FIG. 2 as an example. Atthis step S7, a time difference Δt (seconds) between a current time andthe last acquisition time is further calculated. The moving locus of theinspection action table 336 is recorded. That is, the position of theuser that changes with lapse of time is recorded as the moving locus.

Then, in a step S9, the central controller 14 measures a time period(inspection time period) that the user exists in the explainable rangeAi about the exhibition Ei, and records the time period (inspection timeperiod) in the column of the inspection time of the inspection actiontable 336.

The steps S7 and S9 are performed repeatedly about the user until it isdetected that the user leaves in a step S11. That is, the user ispursued by the range image sensor 12 (tracking) after the user entersthe exhibition hall until the user leaves, and an inspection action,what inspection action is performed about which exhibition during howmuch time, and the moving locus are recorded in the inspection actiontable 336.

However, a tracking method of each user for recording such an inspectionaction table is not limited to this embodiment, and may be performed byother arbitrary methods. Then, if the leaving of the user is detectedbased on the information from the tag reader 13 described previously,for example, in the step S11, the attendance flag for the correspondinguser in the user management table 334 is reset in a step S13, and then,this record processing is terminated.

In addition, although the inspection action after the user enteringuntil leaving is recorded in the inspection action table 336 in realtime in the above-described embodiment, it is not necessary to record inreal time while performing the tracking of the user, and the datarepresenting the above-described inspection action of the user may betemporarily stored in a buffer, and when the user leaving, for example,the inspection action table 336 may be recorded as badge processing.

Like previous record processing, robot action determination processingshown in FIG. 12 is started when a new attendance is in the exhibitionhall. Then, unless the processing is terminated at a step S21,proceeding to a step S23 wherein an inspection sum total time of theuser Ui is calculated. In the inspection action table of the user AAA ofFIG. 9, since the user AAA is the second time attendance at this time,the inspection sum total time is calculated by reading the history ofinspection action at the last time (the first time) attendance, andtotaling the inspection time period included in the history ofinspection action.

Then, the central controller 14 determines whether the calculatedinspection sum total time is less than a predetermined time period, 60seconds, for example in a step S25. Since the first inspection sum totaltime of the user AAA is 400 seconds (=300+60+40), “YES” is determined atthe step S25.

Accordingly, in a next step S27, the central controller 14 controls themovement of the robot 10 so as to make the robot 10 approach the userUi, and makes the robot 10 output an utterance content of the contentnumber 2 about the exhibition Ei (the exhibition E1 in the embodiment)having the longest inspection time period last time, for example. Thecentral controller 14 makes the utterance content 2 as “Although itseems you did see the exhibition Ei well last time, please also see theexhibition Ej this time”, for example be output from the speaker 74 viathe audio input/output board 110 of the robot 10.

On the contrary, “NO” is determined at the step S25 at a time that theinspection sum total time period last time is less than thepredetermined time (60 seconds, in the embodiment). In such a case, in anext step S29, the central controller 14 controls the movement of therobot 10 so as to make the robot 10 approach the user Ui, and makes therobot 10 output an utterance content of the content number 1. Thecentral controller 14 makes the utterance content as “Although it seemsyou did not see very much last time, please see slowly this time”, forexample be output from the speaker 74 of the robot 10 If constructedthat the robot outputs the utterance content that includes the phrasereferring to the history of inspection action at the last timeattendance of the user and is suitable for the this time attendance asin this embodiment, since it is possible not only to provide appropriateguidance information for the user, but to give the user a strongimpression that the robot observes the user well, it is expectable, likea case to contact with a familiar explainer or shop clerk, to increase asense of closeness for the robot of the user.

However, the utterance content output to the user at the step S27 and/orS29 may not necessarily be an utterance content that mentions thehistory of inspection action at the last time attendance. For example,in a case where a new exhibition is exhibited, for example, regardlessof the history of inspection action at the last time attendance, anutterance content like the content number 4 of the utterance contenttable 338 in FIG. 10 may be output.

Then, the central controller 14 applies instructions to the robot 10 ina step S31 so as to perform an appropriate guidance action to the sameuser or another user. However, the guidance action itself of the robot10 is not very important, and therefore, a description thereof isomitted here.

In addition, in the above-described embodiment, although the utterancecontent that is output at the step S27 or S29 is chosen and determinedby determining whether the inspection sum total time period at the lasttime attendance is equal to or more than the predetermined time in thestep S25, a factor for selectively determining an utterance content isnot limited to the inspection sum total time at the last time attendanceof this embodiment.

For example, an utterance content may be chosen and determined based onthe moving locus of the user that is recorded in the inspection actiontable 336 at the step S9 of FIG. 11. For example, it is considered anembodiment that the moving locus is classified with patterns, and anutterance content is chosen and output according to the classification.

Furthermore, in other embodiments, when the robot 10 has a display, theguidance information may be provided to the user with utilizing an imagecontent in addition to an utterance content.

In the above-described embodiment, it is described that both the recordprocessing of FIG. 11 and the action determination processing of FIG. 12are performed by the central controller 14. However, these processingmay be performed by the robot 10 altogether. In such a case, theprocessor 90 (FIG. 6) of the robot should just receive directly theoutput data from the range image sensor 12 shown in FIG. 3 and theoutput data from the tag reader 13. However, the output data from therange image sensor 12 and the output data from the tag reader 13 may beinput to the central controller 14 like the above-described embodiment,and after performing required processing by the central controller 14,only the data of a result may be given to the robot 10. Since theprocessing burden of the processor 90 of the robot 10 decreases, such away may be desirable. Furthermore, in the above-described embodiment, inorder to determine whether the inspection sum total time at the lasttime attendance is shorter than the predetermined time, in the step S25of FIG. 12, it is determined whether “the inspection sum total time isless than 60 seconds.” However, not limited to “less than”, and it maybe determined whether “the inspection sum total time is equal to or lessthan 60 seconds.”

Second Embodiment

In the second embodiment, the robot 10 outputs an utterance contentwhile pointing at an exhibition. In addition, a robot control system 100of the second embodiment is approximately the same as that of the firstembodiment, and therefore, a description of the structure of the system,the appearance of the robot 10, the electric structure, etc. is omitted.

FIG. 13 is a block diagram showing the electric structure of the centralcontroller 14. With reference to FIG. 13, in the central controller 14of the second embodiment, the utterance content database (DB: database)24 and the user DB 26 are further connected to the processor 16 of thefirst embodiment.

The utterance content DB 24 is stored with the utterance contents thatthe robot 10 outputs. The user DB 26 is stored with the information ofthe user in the space corresponding to the user ID. In addition, becausethese DBs will be described later, a detailed description is omittedhere.

FIG. 14 is a map showing the planar position of the exhibition hall(space) according to the second embodiment. With reference to FIG. 14,the position of the entrance and the positions that a plurality ofexhibitions E are installed in the second embodiment are the same asthose of the first embodiment.

Two explanation start ranges A and two explanation stop ranges A′ thatrespectively include the explanation start ranges A are formed so as tocorrespond to the exhibition E1 of the second embodiment. Theexplanation start range A4 and the explanation stop range A4′ are madeto correspond to a left side of the exhibition E1. Furthermore, theexplanation start range A5 and the explanation stop range A5′ are madeto correspond to a lower side of the exhibition E1. Then, eachexplanation start range A corresponds to an utterance content (contentsto be explained) that is to be output to the user. In addition, theexplanation stop range A′ is set up more widely than the explanationstart range A. Furthermore, the explanation start range A and theexplanation stop range A′ may be called a first predetermined range anda second predetermined range, respectively. Then, these ranges may becalled a predetermined range when not distinguishing these ranges.

With reference to FIG. 15, the utterance content DB 24 is constructed bya table, for example, and the table includes columns of a number, acenter point, an explanation start range, an explanation stop range andcontents. Then, one utterance content is indicated by one line. Forexample, in the utterance content that “1” is stored in the column ofthe number, “C1” is stored in the column of the center point, “A1” isstored in the column of the explanation start range, “A1′” is stored inthe column of the explanation stop range, and utterance contents as“This (with pointing) is electric socket”, “Electricity is charged fromhere (with pointing)”, etc. are stored in the column of the contents.Furthermore, in the utterance content that “2” is stored in the columnof the number, “C2” is stored in the column of the center point, “A2” isstored in the column of the explanation start range, “A2” is stored inthe column of the explanation stop range, and utterance contents as“This motor (with pointing) also bears cooling”, etc. are stored in thecolumn of the content.

For example, at a time that the position and the direction of the userare detected, if the position of the user is included in the explanationstart range A4 and the direction of the user turns to the center pointC1, the robot 10 moves to around the user and the utterance content of“1” is sent to the robot 10 from the central controller 14. Then, therobot 10 outputs the received utterance content of “1” to the user. Thatis, the robot 10 explains (utters) “This is electric socket” about theexhibition E, after approaching the user and greeting to the user.Furthermore, when instructed as “pointing” in the contents of theutterance content, the robot 10 explains while pointing to a directiontoward the center point C by the hand 66. In addition, the voice basedon the utterance content, etc. is output from the speaker 74 of therobot 10.

At this time, if the position of the user is not outside the explanationstop range A4′, that is, if the user does not go outside the explanationstop range A4′, the robot 10 outputs a continuation of the utterancecontent of “1.” That is, the robot 10 continues the explain as“Electricity is charged from here” to the user. Then, when the output ofthe utterance content is completed, the robot 10 moves to another placeor a different user, after having done goodbye to the user.

Thus, if it is determined that the user approaches the exhibition E andturns to the exhibition E, or it is determined at least one of that theuser approaches the exhibition E and that the user turns to theexhibition E, the robot 10 outputs the utterance content concerning theexhibition E. That is, it is possible to adequately provide to the userthe utterance content concerning the exhibition E when the user getsinterested in the exhibition E. Furthermore, since the exhibition E ispointed by pointing of the robot 10 when outputting the utterancecontent, it is possible to effectively provide to the user the utterancecontent concerning the exhibition E with using the body of the robot 10.

Furthermore, if the position of the user is outside the explanation stoprange A4′, that is, if the user goes out of the explanation stop rangeA4′, the robot 10 stops the output of the utterance content. That is,since it is thought that the user is not interested in the exhibition E,the output of the utterance content can be stopped. Especially, bysetting the explanation start range A4 and the explanation stop rangeA4′ wider than the range A4, it is possible to prevent instructions tooutput the utterance content and instructions to stop the utterancecontent from being repeatedly output to the robot at a time that theuser exists near the explanation start range A4. That is, it is possibleto stabilize the operation or action of the robot 10 by the twopredetermined ranges.

In addition, although illustration is omitted, the center point C, theexplanation start range A, the explanation stop range A′ and theutterance content are also associated with the exhibition E2 and theexhibition E3, respectively.

Furthermore, if the position of the user continues to be detected in theexplanation start range A, the robot 10 outputs a plurality of utterancecontents in succession. That is, if the user is stopping around theexhibition E that the user is interested in, the user can receive theoutput of a plurality of utterance contents from the robot 10.

In the above, the feature of the second embodiment is roughly described.In the following, the second embodiment will be described in detail withreferring to a program storage area 302 of the second embodiment shownin FIG. 16 and a flowchart shown in FIG. 17.

FIG. 16 is a view showing an example of the program storage area 302 ofthe memory 18 in the central controller 14 shown in FIG. 13. Inaddition, since other programs stored in the program storage area 302and other data stored in the data storage areas 304 are the same asthose of the first embodiment, a detailed description is omitted. Asshown in FIG. 16, in the program storage area 302 of the secondembodiment, an output control program 314 that controls an output of anutterance content is further stored as a program for operating thecentral controller 14.

The processor 16 of the central controller 14 of the second embodimentprocesses a plurality of tasks including output control processing, etc.shown in FIG. 17 under control of the OS of Linux (registered trademark)base or other OS.

FIG. 17 is a flowchart of output control processing. If the power supplyof the central controller 14 is turned on, the processor 16 of thecentral controller 14 determines whether a terminating instruction isinput in a step S51. For example, it is determined whether an operationof terminating the central controller 14 is performed by theadministrator. If “NO” at the step S51, that is, if the terminatinginstruction is not received, the processor 16 acquires user informationin a step S53. That is, the position and the direction of the user areread from the user information buffer 330.

Subsequently, the processor 16 determines whether the user enters theexplanation start range A in a step S55. For example, the processor 16reads the map data 332 and determines whether the position of the useris included within the explanation start range A4 of the exhibition E1.If “NO” at the step S55, that is, if the position of the user is thecircumference of the entrance, for example, the processor 16 returns tothe processing of the step S51. Furthermore, if “YES” at the step S55,that is, if the position of the user is included within the explanationstart range A4, for example, the processor 16 determines whether theuser faces the center point C in a step S57. For example, when the useris in the explanation start range A4, it is determined whether thedirection of the user turns to the direction toward the center point C1of the exhibition E1. In addition, when determining whether thedirection of the user turns to the center point C, ±5 degrees isconsidered as a permissible range. That is, at the step S57, it isdetermined whether the center point C is included within the permissiblerange of ±5 degrees with respect to the direction of the user. If “NO”at the step S57, that is, if the user does not turn to the center pointC, the processor 16 returns to the processing of the step S51. Inaddition, the processor 16 performing the processing of the step S55functions as a first determining module, and the processor 16 performingthe processing of the step S57 functions as a second determining module.

Furthermore, if “YES” at the step S57, that is, if the user turns to thecenter point C, the processor 16 makes the robot 10 move near the userin a step S59. That is, the processor 16 issues the coordinatesindicating the position of the user and instructions to move to thecoordinates to the robot 10. As a result, the robot 10 approaches theuser.

Subsequently, the processor 16 outputs an utterance content in a stepS61. That is, an utterance content corresponding to the explanationstart range A that the user enters is read from the utterance content DB24 to be sent to the robot 10. The robot 10 performs the explanationabout the exhibition E based on the received utterance content to theuser while performing the pointing. In addition, the processor 16performing the processing of the step S61 functions as an output moduleor a second output module.

Subsequently, the processor 16 determines whether the output iscompleted in a step S63. That is, the processor 16 determines whether itis notified by the robot 10 that the output of the utterance content iscompleted. If “YES” at the step S63, that is, if the output of theutterance content completed, the processor 16 returns to the processingof Step S51.

On the other hand, if “NO” at the step S63, that is, if the output ofthe utterance content continues, the processor 16 acquires the userinformation in a step S65. For example, the position of the user is readfrom the user information buffer 330. Subsequently, the processor 16determines in a step S67 whether the user is out of the explanation stoprange A′. That is, it is determined whether the user loses interest inthe explanation concerning the exhibition E. In addition, the processor16 performing the processing of the step S67 functions as a thirddetermining module.

If “NO” at the step S67, that is, if the position of the user is withinthe explanation stop range A′, the processor 16 returns to theprocessing of the step S61. That is, the robot 10 continues the outputof the utterance content. On the other hand, if “YES” at the step S67,that is, if the user goes out of the explanation stop range A′, theprocessor 16 stops the output in a step S69. That is, the processor 16issues instructions to the robot 10 to stop the output of the utterancecontent. Then, the processor 16 returns to the processing of the stepS51 if the processing of the step S69 is ended. In addition, theprocessor 16 performing the processing of the step S69 functions as astopping module.

Then, if “YES” at the step S51, that is, if the user performs anoperation to terminate the central controller 14, for example, theprocessor 16 terminates the output control processing.

In addition, the processor 16 performing the processing of the step S53or S65 functions as an acquisition module.

Third Embodiment

In the third embodiment, a degree of intimacy between the user and therobot 10 is presumed, and an operation or action of the robot 10 thatoutputs an utterance content is changed based on the presumed degree ofintimacy. In addition, a robot control system 100 of the thirdembodiment is the same as that of the second embodiment, and therefore,a description of the structure of the system, the appearance of therobot 10, the electric structure, etc. is omitted.

The degree of intimacy of the user and the robot 10 is presumed based onthe number of times of outputting an utterance content to the user.Furthermore, when counting the number of times, the number of times iscounted by distinguishing whether the output of the utterance content iscompleted or stopped.

With reference to FIG. 18, in the user DB 26, corresponding to the userID, the exhibition E that the utterance is output and the number oftimes that the utterance content of the exhibition E is output to theuser are recorded. Furthermore, the number of times of hearing anutterance content is counted by distinguishing “deepening (specialty)”indicating that the utterance content is heard to the last, that is, theoutput of the utterance content is completed and “spread” indicatingthat the user left while hearing the utterance content, that is, theoutput of the utterance content stopped. Paying attention to the user of“001” of the user ID, for example, it is understood that the userreceives the explanation about the exhibition E1 by the robot 10 threetimes and the user listens to the explanation of three times to thelast. Furthermore, although the user receives the explanation two timesby the robot 10 about the exhibition E2, the user stops hearing theexplanation on the way both. Similarly, in a case of the user of “002”of the user ID, the user receives the explanation about the exhibitionE1, but the user stops hearing the explanation on the way. In addition,in the user DB 26, one user ID and corresponding one or more lines aretreated as single user data.

Subsequently, with reference to FIG. 19, in the utterance content DB 24of the third embodiment, columns of “deepening (specialty)” and “spread”are added in comparison with the utterance content DB 24 of the secondembodiment. Numeral values are stored in these columns. In the utterancecontent DB 24, when “0” is stored in each of the columns of “deepening”and “spread”, respectively, a message (“This is electric socket”, forexample) that introduces the exhibition E simply is stored in the columnof the “contents.” In contrast, when “1” is stored in the column of“deepening”, a message (“Electricity flows into battery from here, andbattery is of lithium ion”) that introduces the exhibition E in moredetail is stored in the column of the “contents.” Furthermore, when “1”is stored in the column of “spread”, a message (“Electric bicyclecapable of being charged in the same way at home seems to be sold”) thatis relevant to the exhibition E is stored in the column of the“contents.”

Then, if the user enters the explanation start range A and the robot 10approaches the user, the degree of intimacy is presumed based on thevalue of the “deepening” and the value of the “spread” of the user fromthe user DB 26, that is, the number of times that the utterance contentis output. If the number of times of outputting the utterance content tothe user is one time, for example, since the user and the robot 10 arein a state that there is already acquaintance in both, the degree ofintimacy of a low level can be presumed. Furthermore, if there is muchnumber of times of leaving repeatedly although the utterance content isoutput to the user, the degree of intimacy of a middle level can bepresumed. Then, if there is much number of times that the utterancecontent is output to the last to the user, the degree of intimacy of ahigh level can be presumed. In addition, the degree of intimacy to theuser to whom an utterance content has never output is made “null.”

Thus, at every time that the user receives the explanation by the robot10, the user can make higher the degree of intimacy with the robot 10.

For example, if the user attends the exhibition hall, the operation oraction of the robot 10 is changed according to the presumed degree ofintimacy with the user. In the third embodiment, at least one of areaction time until the robot 10 begins to move, a movement speed whenapproaching, a distance to the user and a standing position, and awaiting position are changed. If the presumed degree of intimacy islarger than the middle level when based on a state that the degree ofintimacy is not set, the robot 10 waits in advance at a positionincluded in a field of view of the user. Furthermore, as the degree ofintimacy becomes higher, the reaction time until the robot begins tomove is shortened, the moving speed when approaching is made faster, andthe distance to the user is shortened, whereby the robot can move withthe user side-by-side. Thus, in the third embodiment, the degree ofintimacy between the user and the robot 10 is changed by an action usingno language.

Next, when the robot 10 approaches the user and the degree of intimacyof a low level is presumed by such action, the robot 10 outputs anutterance content after greeting saying “You came again” or the like.When the degree of intimacy of a middle level is presumed, the robot 10outputs an utterance content after greeting saying “We are alreadycompletely good friends.” When the degree of intimacy of a high level ispresumed, after speaking saying “I am glad to meet again” and asking forhandshaking etc., the robot 10 outputs an utterance content.

Furthermore, if the degree of intimacy is equal to or more than the lowlevel, before outputting an utterance content, the abstract of anutterance content having been already output is output to the user. Forexample, it is possible to specify an utterance content having beenoutput based on a status of the user data of the user DB 26. Therefore,if the utterance contents of top two lines in the utterance content DB24 shown in FIG. 19 have been already output, the abstract of thecontents as “This is electric socket”, “Battery of lithium ion ischarged” and “Now, I explain more little” are uttered (output) from therobot 10.

Next, for the user to the exhibition E, corresponding to the value ofthe column of “deepening” of the user DB 26, an utterance content isread from the utterance content DB 24, and output from the robot 10. Forexample, in a case where the user enters the explanation start range A4of the exhibition E1 (center point C1), and “1” is stored as “deepening”to the exhibition E1 for the user, from the utterance content DB 24, theutterance content that “deepening” for the exhibition E1 is “1” is read,and sent to the robot 10. As a result, the robot 10 provides theexplanation about the exhibition E1 “Electricity flows to battery fromhere, and battery is of lithium ion” to the user. That is, the user whoheard the last time utterance content to the last can deepen theknowledge over the exhibition E more.

On the other hand, in a case where the user enters the explanation startrange A4 of the exhibition E1 (center point C1), and “1” is stored as“spread” to the exhibition E1 for the user, the utterance content of “1”of “spread” for the exhibition E1 is read from the utterance content DB24, and sent to the robot 10. As a result, the robot 10 provides theexplanation about the exhibition E as “Electric bicycle capable of beingcharged in the same way at home seems to be sold” to the user. That is,the user who did not hear the last time utterance content to the lastcan acquire knowledge derived from the exhibition E. Thus, it ispossible to prevent the robot 10 from providing the same explanation tothe same user repeatedly. Therefore, the user can acquire differentknowledge at every time of seeing the exhibition E.

Furthermore, since the action of the robot 10 changes according to thedegree of intimacy that is presumed, the user can realize the deepeningof the degree of intimacy with the robot 10. Furthermore, in theembodiment, it is possible to presume the degree of intimacy based onthe number of output times the utterance content to the user, that is,the number of communication times with the user. Accordingly, theprocessing time when presuming the degree of intimacy can be shortened.

In addition, in a case where a further user is in the circumference(within 1 to 2 meters, for example) during outputting the utterancecontent to the user, it is determined that the utterance content is alsooutput to the further user, that is, the further user heard theexplanation secondhand. Then, the user data of the further user isupdated like the user data of the user. Accordingly, in the space thatmany users exist, each user needs to cease to receive the offer of thesame utterance content repeatedly.

Furthermore, in other embodiments, a frequency that the robot 10 offersthe explanation to the user may be changed according to the degree ofintimacy. For example, the robot 10 is made not to output the utterancecontent to the user as the presumed degree of intimacy becomes lower.Specifically, the utterance content is certainly output to the userhaving the degree of intimacy of a high level, and the utterance contentis output to the user having the degree of intimacy of a middle level ata half rate to the user of the high level. However, for the user havingno degree of intimacy, that is, the user who attends the exhibition hallfirst, the utterance content is certainly output.

In the above, the feature of the third embodiment is outlined. In thefollowing, the third embodiment will be described in detail with usingflowcharts shown in FIG. 20 to FIG. 21.

FIG. 20 and FIG. 21 are flowcharts of output control processing of thethird embodiment. In addition, since the processing in the steps S51-S69in the output control processing of the third embodiment aresubstantively unchanged, a detailed description thereof is omitted.

If the power supply of the central controller 14 is turned on, theprocessor 16 determines whether a terminating instruction is received ina step S51. If “NO” at the step S51, that is, if not the terminatinginstruction, the processor 16 determines whether the user enters in astep S81. That is, it is determined whether a new user is detected atthe entrance of the space. If “NO” at the step S81, that is, if a newuser is not detected, the processor 16 proceeds to processing of a stepS85. On the other hand, if “YES” at the step S81, that is, if a new useris detected, the processor 16 identifies the user in a step S83. Thatis, when the tag reader 13 that is installed at the entrance of thespace reads a user ID of the user from an RFID tag, the user ID isspecified from the user DB 26. If the user ID that is read is notregistered in the user DB 26 at this time, user data containing the userID is registered in the user DB 26. Then, when the user ID is specifiedor registered, a position of the user that is detected at the entranceand the user ID are associated with each other.

Subsequently, the processor 16 determines whether the user is in thespace in a step S85. It is determined whether the position of the useris detected in the space. If “NO” at the step S85, that is, if there isno user in the space, the processor 16 returns to the processing of stepS51. On the other hand, if “YES” at the step S85, that is, if the useris detected in the space, the processor 16 acquires user information ina step S53.

Subsequently, the processor 16 reads user data in a step S87. That is,the user data corresponding to the above-described user is read from theuser DB 26. Subsequently, the processor 16 presumes the degree ofintimacy based on the user data in a step S89. That is, the degree ofintimacy is presumed based on the values stored in the columns of“deepening” and “spread” in the user data. Subsequently, the processor16 determines the waiting position of the robot 10 based on the degreeof intimacy in a step S91. If the presumed degree of intimacy is largerthan the middle level, for example, the robot 10 moves to a position tobe included in a field of view of the user.

Subsequently, the processor 16 determines whether the user enters theexplanation start range in a step S55. The processor 16 returns to theprocessing of step S51 if “NO” at the step S55, and if “YES” at the stepS55, the processor 16 determines whether the user turns to the centerpoint C in a step S57. If “NO” at the step S57, the processor 16 returnsto the processing of the step S51.

Furthermore, if “YES” at the step S57, that is, the user enters theexplanation start range A and the user turns to the corresponding centerpoint C, the processor 16 determines the action of the robot 10 based onthe degree of intimacy in a step S93. That is, the processor 16determines, according to the level of the presumed degree of intimacy,at least one of the reaction time until the robot 10 begins to move, themovement speed when approaching, the distance to the user and thestanding position.

Subsequently, the processor 16 outputs an utterance content based on theuser data in a step S95. That is, based on the values stored in thecolumns of “deepening” and “spread” in the user data, the utterancecontent is chosen from the utterance content DB 24. Then, the utterancecontent being chosen is sent to the robot 10, and the utterance contentis output to the user. In addition, the processor 16 performing theprocessing of the step S95 functions as an output module.

Subsequently, the processor 16 determines whether the output iscompleted in a step S63. If “YES” at the step S63, that is, if theoutput of the utterance content is completed, the processor 16 updatesthe column of “deepening” of the user data in a step S97. That is, sincethe user listens to the explanation by the robot 10 to the last, thevalue of the column of “deepening” is incremented, and the valueincreases by one (1). If the processing of the step S97 is ended, theprocessor 16 proceeds to the processing of the step S101.

Furthermore, if “NO” at the step S63, that is, if the output of theutterance content is not completed, the processor 16 acquires the userinformation in a step S65, and the processor 16 determines whether theuser is out of the explanation stop range A′ in a step S67. Theprocessor 16 returns to the processing of the step S95 if “NO” at thestep S67, and if “YES” at the step S67, the processor 16 stops theoutput in a step S69.

Subsequently, the processor 16 updates the column of “spread” of theuser data in a step S99. That is, since the user left without listeningto the explanation by the robot 10 to the last, the value of the columnof “spread” is incremented, and the value increases by one (1).

Subsequently, the processor 16 determines whether a further user is inthe circumference in a step S101. That is, it is determined whether theutterance content that is output to the user is heard by the furtheruser. If “NO” at the step S101, that is, if no further user exists inthe circumference, the processor 16 returns to the processing of thestep S51. On the other hand, if “YES” at the step S101, that is, if thefurther user is in the circumference, the processor 16 updates the userdata of the further user in a step S103. If the value of the column of“deepening” is updated in the user data of the user, for example, thevalue of the column of “deepening” is also updated in the user table ofthe further user. Then, if the processing of the step S103 is ended, theprocessor 16 returns to the processing of the step SM. Then, if “YES” atthe step S51, the processor 16 terminates the output control processing.

Furthermore, the processor 16 performing the processing of the step S89or S95 functions as a presuming module. Furthermore, the processor 16performing the processing of the step S91 or step S93 functions as adetermination module. The processor 16 performing the processing of thesteps S97, S99 and S103 functions as a storing module. Especially, theprocessor 16 performing the processing of the step S97 functions as acompletion storing module, and the processor 16 performing theprocessing of the step S99 functions as a stop storing module. Then, theprocessor 16 performing the processing of the step S101 functions as thefourth determination module.

In addition, the pointing at the exhibition E may be performed by a facemovement, a gaze, etc. of the robot 10. Furthermore, the robot 10 may beprovided with a pointing module or pointing member, such as a laserpointer, a pointing stick, etc.

Furthermore, in further embodiments, the robot 10 may have the centralcontroller 14, and the robot 10 may directly acquire thethree-dimensional information from the range image sensors 12 through awireless connection or a wired connection. In such a case, the robot 10can determine an utterance content to be output alone and output thesame. For example, the processor 90 of the robot 10 that performs theoutput control processing of the second embodiment makes the robot 10move near the user based on the user information in the processing ofthe step S59, and reads an utterance content corresponding to theexhibition E from the utterance content DB 24 and makes the robot 10output the utterance content in the processing of the step S61.Furthermore, the processor 90 of the robot 10 that performs the outputcontrol processing of the third embodiment makes the robot 10 move tothe waiting position that is determined based on the degree of intimacyin the processing of the step S91, makes the robot 10 perform the actionthat is determined based on the degree of intimacy in the processing ofthe step S93, and in the step S95, reads an utterance content from theutterance content DB 24 based on the user data and makes the utterancecontent be output. Thus, in the further embodiments, the robot 10 canperform the explanation about the exhibition to the user by autonomouslymoving in the inside of the exhibition hall and operating.

Furthermore, in other embodiments, the robot 10 may output performinginstructions of the output control processing to the central controller14 in order to output the utterance content when the robot 10 detectsthe entering of the user. Thus, in order to support the autonomousaction of the robot 10, the central controller 14 may be used by therobot 10.

Furthermore, in other embodiments, the explanation start range A and theexplanation stop range A′ may be the same coordinates ranges.

In addition, in other embodiments, when the robot 10 is provided with adisplay, the utterance content may be output with using not only a voicebut an image. For example, the robot 10 that outputs the utterancecontent performs the explanation about the exhibition E while displayingan image on the own display.

Fourth Embodiment

In the fourth embodiment, in place of the robot 10 shown in the firstembodiment to the third embodiment, a humanoid robot 501 that comprisesa pair of left and right leg portions and a pair of left and right armportions, and is movable by an action of the leg portions is adopted.

[Structure]

FIG. 22 is a view showing an example of an appearance configuration ofthe robot 501 according to an embodiment. Furthermore, FIG. 23 is a viewshowing an example of functional structure that the robot 501 isprovided with. The robot 501 has a head portion 510, a body portion 520,a pair of left and right arm portions 530, a pair of left and right handportions 540 and a pair of left and right leg portions 550, for example.In addition, in the following, a description is made withoutdistinguishing the left component and the right component about eachpair of left and right components.

A pair of left and right cameras 512 are provided on the head portion510. The camera 512 is a camera having a solid-state imaging device suchas CCD and CMOS, for example. The camera 512 photographs a visible lightor infrared light, and sends an image being photographed to a controlportion 590.

The body portion 520 is joined with the head portion 510 via a headjoint portion 522, is joined with the arm portion 530 via a shoulderjoint portion 524, and is joined with the leg portion 550 via a waistjoint portion 526 and a hip joint portion 528. The head joint portion522 makes the head portion 510 rotate to the body portion 520 with onedegree of freedom in the roll direction. In the following, a descriptionis made with using rotation directions represented by a yaw direction, apitch direction and a roll direction. FIG. 24 is a view showing adefinition of the yaw direction, the pitch direction and the rolldirection. As shown in this view, a direction that a driven member B isrotated with an axis of a direction C of the driven member B beingviewed from a joint portion A is defined as the roll direction.Furthermore, a direction that the direction C itself is rotated in afirst direction is defined as the pitch direction, and a direction thatthe direction C itself is rotated in a second direction perpendicularlyintersecting the first direction is defined as the yaw direction.

The shoulder joint portion 524 makes the arm portion 530 rotate to thebody portion 520 with three degrees of freedom in the yaw direction, thepitch direction and the roll direction, for example. The waist jointportion 526 makes the hip joint portion 528 rotate to the body portion520 with one degree of freedom in the roll direction, for example. Thehip joint portion 528 makes the leg portion 550 rotate to the hip jointportion 528 with three degrees of freedom in the yaw direction, thepitch direction and the roll direction, for example. In addition, awaist camera, etc. not shown may be housed in the body portion 520.

The arm portion 530 comprises a first arm link portion 532 equivalent toan upper arm, an elbow joint portion 534, a second arm link portion 536equivalent to a forearm and a wrist joint portion 538, for example. Theelbow joint portion 534 makes the second arm link portion 536 rotate tothe first arm link portion 532 with one degree of freedom in the pitchdirection (to inner side of the arm). The wrist joint portion 538 makesthe hand portion 540 rotate to the second arm link portion 536 withthree degrees of freedom in the yaw direction, the pitch direction andthe roll direction, for example.

The hand portion 540 comprises a palm portion 541, a thumb portion 542,an index finger portion 543, a middle finger part 544, a third fingerportion 545 and a little finger portion 546, for example. FIG. 25 is aview enlargedly showing the hand portion 540. Each finger portion canrotate to the palm portion 541 with two degrees of freedom in the pitchdirection and the roll direction by knuckle joint portions 541A-541E.The thumb portion 542 comprises a thumb tip portion 542A, a first thumbjoint portion 542B and a first thumb link portion 542C. The first thumbjoint portion 542B makes the thumb tip portion 542A rotate to the firstthumb link portion 542C with one degree of freedom in the pitchdirection (to a palm side). The index finger portion 543 comprises anindex finger tip portion 543A, a first index finger joint portion 543B,a first index finger link portion 543C, a second index finger jointportion 543D and a second index finger link portion 543E. The firstindex finger joint portion 543B makes the index finger tip portion 543Arotate to the first index finger link portion 543C with one degree offreedom in the pitch direction (to a palm side). The second index fingerjoint portion 543D makes the first index finger link portion 543C rotateto the second index finger link portion 543E with one degree of freedomin the pitch direction (to a palm side). The middle finger portion 544,the third finger portion 545 and the little finger portion 546comprises, like the index finger 543, a tip portion, a first jointportion, a first link portion, a second joint portion and a second linkportion. A detailed description about these is omitted.

The leg portion 550 comprises a first leg link portion 551, a knee jointportion 552, a second leg link portion 553, an ankle joint portion 554and a foot portion 555, for example. The knee joint portion 552 makesthe second leg link portion 553 rotate to the first leg link portion 551with one degree of freedom in the pitch direction. The ankle jointportion 554 makes the foot portion 555 rotate to the second leg linkportion 553 with two degrees of freedom in the pitch direction and theroll direction.

The robot 501 comprises an actuator group 560 that makes a driven member(the second leg link portion 553 in case of the knee joint portion 552)rotate a joint base member (the first leg link portion 551 in case ofthe knee joint portion 552) by applying a rotation power to the jointportion. Each actuator of the actuator group 560 may be provided foreach of the joint portions, and there may exist an actuator capable ofapplying a rotation power to a plurality of joint portions. Furthermore,the actuator may be housed within the joint portion, or may be arrangedoutside the joint portion. In a case of the latter, the actuator appliesthe rotation power to the joint portion by connecting to the jointportion and the driven member by a wire, a belt, a pulley, a hydraulicorganization, etc.

Furthermore, each actuator included in the actuator group 560 isattached with each rotary encoder included in a rotary encoder group562. Each rotary encoder detects a rotation angle of the correspondingactuator, and sends the same to the control portion 590. In addition,the rotary encoder group 562 may detect not the rotation angle of theactuator group 560 but the rotation angle of the joint portion.

The robot 501 comprises a speaker 570 for outputting a voice. Contentsof the voice that the speaker 570 outputs is determined by the controlportion 590. The robot 501 further comprises a storage portion 580 andthe control portion 590. The storage portion 580 includes a RAM, a ROM,an HDD, a flash memory, etc., for example. The storage portion 580 isstored with data such as a control program 582 that a processor such asa CPU, etc. provided in the control portion 590 executes, objectcoordinates data 584 indicating a position of an object OB (exhibitionE) that is a target that the robot 501 guides and guidance voice data586 etc. The control program 582 may be stored in advance in the storageportion 580, or may be downloaded from another computer device via anInternet. Furthermore, the control program 582 that is stored in aportable type storage medium may be installed in the storage portion580.

The control portion 590 comprises an environment recognition portion592, a posture control portion 594 and a voice guidance control portion596, for example. A part or all of these functional portions may besoftware functional portions that show functions when the processor ofthe control portion 590 performs the control program 582. In addition, apart or all of these functional portions may be hardware functionalportions such as an LSI (Large Scale Integration), an ASIC (ApplicationSpecific Integrated Circuit), etc.

The environment recognition portion 592 analyzes a photographed imagethat is input from the camera 512, and grasps positions of theabove-described object and a person (user). In addition, a photographedimage of a camera attached to the ceiling or the like in the house thatthe object is placed, for example, is input to the robot 501, and thepositions of the object and the person may be grasped by analyzing thisphotographed image. If constructed like this, since bird's-eye viewinformation can be acquired, the environment can be more correctlyrecognized. Furthermore, the environment recognition portion 592 maygrasp a position of the object by an infrared radar, an ultrasonicradar, etc. In performing the guidance about the object, the posturecontrol portion 594 controls the actuator group 560 such that the objectcan be pointed by the hand portion 540. The voice guidance controlportion 596 controls the speaker 570 to output the voice that guides theobject.

FIG. 26 is a view showing the functional structure of the controlportion 590 in more detail. The posture control portion 594 comprises aninterference calculation portion 594A, a standing position determinationportion 594B, a moving instruction calculation portion 594C, a pointingtiming calculation portion 594D, a pointing instruction calculationportion 594E, an arm control portion 594F and a waist and leg controlportion 594G. Furthermore, the pointing instruction calculation portion594E comprises a wrist direction calculation portion 594Ea, a waist/armdistribution portion 594Eb, a wrist position calculation portion 594Ecand a hand posture calculation portion 594Ed.

[Movement of the Robot 501]

The robot 501 moves according to the position to the object and theposition of the person who receives the guidance. Then, before and aftermoving, the actuator group 560 is controlled such that a state that apredetermined position OB1 of the object OB is located in the directionthat is pointed by the index finger portion 543, for example, can bemaintained. Hereinafter, this will be described.

FIG. 27 is a view showing the moving principle of the robot 501. Therobot 501 stores a positional area of the object OB as the objectcoordinates data 584, and the standing position determination portion594B sets up an area within a predetermined distance from an outer edgeof the positional area as a ban (inhibit) area BA. Furthermore, theposition OB1 of the object OB is described in advance in the objectcoordinates data 584 as a representative position suitable for lookingat the object OB. Then, a suitable area WA that is located in the frontof the position OB1 and excludes the ban area BA from a fan shape areawith the center of the position OB1 is an optimal area for the person Hlooking at the position OB1 that is the representative point of theobject OB. Furthermore, an area that is located at both sides of thesuitable area WA and excludes the ban area BA from a fan shape areahaving an angle range wider than the suitable area WA with the center ofposition OB1 is set as a movable area MA. The robot 501 is controlled tomove in an area including the movable area MA and the suitable area WAwhen performing the voice guidance about the object OB. The standingposition determination portion 594B determines the standing position ofthe robot 501 within such the areas, and outputs the standing positionto the moving instruction calculation portion 594C. The movinginstruction calculation portion 594C instructs the waist and leg controlportion 594G such that the robot 501 moves to the standing position thatis determined by the standing position determination portion 594B. Thewaist and leg control portion 594G controls the actuators attached tojoint portions below the waist joint portion 526 so as to move accordingto the instructions applied from the moving instruction calculationportion 594C.

The interference calculation portion 594A performs a calculation for therobot 501 not to interfere (contact) with a person who receives theguidance. FIG. 28 is a view showing a manner that the robot 501 avoidsthe interference with a person. The interference calculation portion594A determines whether a position of a person H that is input from theenvironment recognition portion 592 is within the predetermined distancefrom the position of each of the body portion 520, the arm portion 530and the hand portion 540. Then, when the distance is within thepredetermined distance, the interference calculation portion 594Aoutputs control amounts for retracting the arm portion 530 and/orretreating the robot 501 (an shrinkage amount of the arm and/or thestanding position) to the position determination portion 594B and/or thepointing instruction calculation portion 594E. As shown in FIG. 28, ifthe person H approaches, the robot 501 contracts the arm portion 530 ina direction indicated by an arrow mark in FIG. 28 (B) to keep away fromthe person H, shortens an interference radius from the shoulder, andrecedes in a direction indicated by an arrow mark (direction opposite tothe person H) in FIG. 28 (C).

FIG. 29 is a view showing processing that the interference calculationportion 594A calculates the standing position. In this view, a point P1is originally the standing position for the robot 501. If the person Happroaches (if the distance becomes within a predetermined distance, forexample), the interference calculation portion 594A determines first aprovisional standing position at a position P2 that makes the robot 501keep away linearly from the position of the person H. Then, theinterference calculation portion 594A determines whether the provisionalstanding position P2 is within the ban area BA, and when within the banarea BA, the interference calculation portion 594A determines, as a newstanding position, a position P3 that is kept away linearly from theposition OB2 nearest the object OB (OB1 may be sufficient or the centerpoint of an area of the object OB may be sufficient), and within thesuitable area WA or the movable area MA. At this time, the interferencecalculation portion 594A instructs the arm control portion 594F and/orthe waist and leg control portion 594G via the standing positiondetermination portion 594B and the moving instruction calculationportion 594C such that the robot 501 moves without changing thedirection of the body portion 520 and/or the direction of the armportion 530. By this, the robot 501 can prevent interfering with theperson H even if turns the body portion 520 and/or the arm portion 530.Then, the interference calculation portion 594A instructs the armcontrol portion 594F and/or the waist and leg control portion 594G viathe standing position determination portion 594B and the movinginstruction calculation portion 594C such that the robot 501 moves tothe position P3 with turning the direction thereof (turning the left incase of FIG. 29). By these, the robot 501 can move smoothly whileavoiding interference with the person and the object OB.

[Guidance Posture and Action]

FIG. 30 and FIG. 31 are views showing an example of a posture at a timeof the robot 501 pointing at an object. FIG. 30 is a view that is viewedfrom a top and FIG. 31 is a view that is viewed from a side. As shown,when pointing to the direction of the specific position OB1 of theobject OB, the robot 501 forms a posture that the index finger portion543 is extended on a straight line L that connects the rotation center524A of the first arm link portion 532 in the shoulder joint portion 524(an example of the “predetermined portion” in the body portion 520) withthe specific position OB1. The robot 501 stores the coordinatesinformation of predetermined position OB1 of the object OB in thestorage portion 580 as the object coordinates data 584. The posturecontrol portion 594 controls the actuators of the shoulder joint portion524, the elbow joint portion 534, the wrist joint portion 538 and thehand portion 540 to realize such a posture. Thus, the person whoreceives the guidance can grasp intuitively the direction that the robot501 points. That is, the robot 501 can guide more effectively the gazeof the person who received the guidance.

Furthermore, the robot 501 maintains, by the processing of theinterference calculation portion 594A, etc., a state that the extendingdirection of the index finger portion 543 (the pointing direction) turnsto the position OB1 before and after moving. FIG. 32 is a view showing amanner that the robot 501 continues turning the extending direction ofthe index finger portion 543 to the position OB1. By this, the personwho receives the guidance can grasp intuitively the direction that therobot 501 points. That is, the robot 501 can guide more effectively thegaze of the persons who receive the guidance.

In addition, although the index finger portion 543 is shown as anexample of a “pointing member (pointing module)”, not limited to this.For example, the robot 501 may treat the whole of the hand portion 540as the pointing member. The robot 501 may turn the hand portion 540 tothe object OB with a state that all the finger portions arestraightened, for example. In such a case, the posture control portion594 controls the actuators of the shoulder joint portion 524, the elbowjoint portion 534, the wrist joint portion 538 and the hand portion 540to take the posture that the whole of the hand portion 540 extends onthe straight line L. FIG. 33 is a view showing such a posture, andshowing another example of a posture at a time of the robot 501 pointingat an object (since a view that is viewed from the top is approximatelythe same as FIG. 26, only a view that is viewed form the side is shown).Furthermore, the robot 501 may hold tools such as a pointing stick inthe hand portion 540, and may turn the pointing stick being held to theobject OB.

In addition, although that “the index finger portion 543 extends on thestraight line L” is described to have a meaning on the three-dimensionalspace in FIG. 30 and FIG. 31, this may have a meaning on thetwo-dimensional space. That is, that “when viewed from a specificdirection, the index finger portion 543 may extend on the straight lineL” is sufficient.

Furthermore, FIG. 34 and FIG. 35 are views schematically showing theaction that is performed when the robot 501 points at an object. FIG. 34is a view that is viewed from a top and FIG. 35 is a view that is viewedfrom a side. As shown, when pointing to the direction of the specificposition OB1 in the object OB, the robot 501 performs an action that theindex finger portion 543 comes and goes on the straight line L whilemaintaining a state that the index finger portion 543 is extending onthe straight line L. The posture control portion 594 controls theactuators of the shoulder joint portion 524, the elbow joint portion 534and the wrist joint portion 538 so as to realize such an action. Bythis, the person who receives the guidance can grasp still moreintuitively the direction that the robot 501 points. That is, the robot501 can guide still more effectively the gaze of the person who receivesthe guidance. In addition, such an action is also performed when a tipside member from the arm portion 530 of the robot 501 interferes withthe object OB and/or a person.

In the following, with reference to FIG. 26, a flow of processing untilthe posture shown in FIG. 30 to FIG. 35 is realized will be described.The pointing instruction calculation portion 594E is input with apointing timing signal and identification information of the object OBfrom the pointing timing calculation portion 594D, information thatdesignates a shrinkage amount of the arm portion from the interferencecalculation portion 594A and the positions of all the objects OB fromthe object coordinates data 584, respectively, for example.

The wrist direction calculation portion 594Ea specifies, first, theposition OB1 of the object OB that the guidance is to be performed outof the positions of all the objects OB with using the identificationinformation of the objects OB. This position OB1 is described as aposition (position at a time of making the exhibition hall into a plane)on a real coordinate system, for example. The wrist directioncalculation portion 594Ea performs processing that converts the positionon the real coordinate system into the position on a robot coordinatesystem. FIG. 36 is a view showing the processing by the wrist directioncalculation portion 594Ea. In this view, an x-axis and a y-axis shown bydotted lines indicate the real coordinate system, and an X-axis and aY-axis shown by solid lined indicate the robot coordinate system. TheX-axis of the robot coordinate system is defined as a direction that apart equivalent to a tiptoe of the robot 501 turns to, for example.Conversion of the position in the real coordinate system into theposition on the robot coordinate system is performed based on theposition and the direction of the robot 501 on the real coordinatesystem.

Furthermore, if the position and the direction on the robot coordinatesystem of the position OB1 are evaluated by the above-mentionedconversion, the wrist direction calculation portion 594Ea determineswhether the position OB1 is to be pointed by a right arm portion or aleft arm portion. In FIG. 36, an angle range AR shows a possible rangeof pointing by the right arm and an angle range AL shows a possiblerange of pointing by the left arm. The wrist direction calculationportion 594Ea determines fundamentally that, if the direction of theposition OB1 is within the angle range AR, the position OB1 is to bepointed by the right arm, and if the direction of the position OB1 iswithin the angle range AL, the position OB1 is to be pointed by the leftarm.

Here, a range that is included in neither the angle range AR nor theangle range AL is an impossible range of pointing from the standingposition. In such a case, the wrist direction calculation portion 594Eaoutputs information on the purport that cannot be pointed to the voiceguidance control portion 596, for example, and the voice guidancecontrol portion 596 performs control to change to the voice guidancethat does not need to be performed while pointing. Furthermore, in FIG.36, there is an overlap area of the angle ranges AR and AL. When theposition OB1 exists within the overlap area, the wrist directioncalculation portion 594Ea determines whether to point which armaccording to the position of the person. FIG. 37 is a view showing amanner that the arm having to point is determined when the position OB1exists in the overlap area of the angle ranges AR and AL. The robot 501performs the explanation while making the head front 514 (side that thecamera 512 is provided) of the head portion 510 face the person H. Then,the wrist direction calculation portion 594Ea determines whether topoint with which arm such that the rotation center 524A of the shoulderjoint portion 524, the hand portion 540 and the straight line Lconnecting the position OB1 do not intersect the straight line thatconnects the head portion 510 and the person. In a scene as shown inFIG. 37, if the position OB1 is pointed by the left arm provisionally,since the rotation center 524A, the hand portion 540 and the straightline connecting the position OB1 become to intersect the straight linethat connects the head front 514 and the person, there occurs anunnatural posture seemingly. Accordingly, the wrist directioncalculation portion 594Ea determines, in the scene as shown in FIG. 37,that the voice guidance is to be performed while pointing at theposition OB1 by the right arm.

If the wrist direction calculation portion 594Ea determines thedirection of the hand portion 540 that determines the direction of theposition OB1, that is, the extending direction of the index fingerportion 543, the waist/arm distribution portion 594Eb distributes a“twist” to realize an angle difference (an angle formed by the X-axisand the straight line L in FIG. 36, for example) of the X direction onthe robot coordinate system and the extending direction of the indexfinger portion 543 to the waist joint portion 526 and the joint portionsfrom the shoulder to the arm, the shoulder joint portion 524, the elbowjoint portion 534 and the wrist joint portion 538. The waist/armdistribution portion 594Eb distributes the twist amount such that thelarger the angle difference, the larger rate of the twist about thewaist joint portion 526, for example. FIG. 38 is a view showing anexample of a distribution tendency at a time of the waist/armdistribution portion 594Eb distributing the twist amount. The twistamount θ 526 of the waist joint portion 526 is calculated by a formula(1), for example, when assuming that an angle formed by the X-axis andthe straight line L is θ XL.θ526=−θXL×{1|exp(|θXL/π|}  (1)

If a distribution degree or ratio of the twist amount is determined bythe waist/arm distribution portion 594Eb, in order to realize the twistamount being distributed, the waist and leg control portion 594Gcontrols the actuator attached to the waist joint portion 526.Furthermore, a position (x, y, z) of the hand portion 540 on the robotcoordinate system is calculated by wrist position calculation portion594Ec. Furthermore, an angle that is formed by the index finger portion543 against the palm portion 541 is calculated by the posturecalculation portion 594Ed. The postures shown in FIG. 30, FIG. 31, etc.can be realized by driving, by the arm control portion 594F with usingthese calculation results, the actuators attached to the joint portionsin a tip side part from the shoulder joint 524.

[Processing Flow]

In the following, a flow of processing after the standing position ofthe robot 501 is determined until the voice guidance is performed in aform of a flowchart. FIG. 39 is an example of a flowchart showing theflow of the processing performed by the control portion 590. First, thecontrol portion 590 determines an object OB and a guidance content (in astep S300). Next, the control portion 590 determines whether theguidance content is a content requiring pointing (in a step S302). Whenthe guidance content is not a content requiring the pointing, the voiceguidance control portion 596 controls the speaker 570 to output thevoice guidance while the pointing is not performed (in a step S316).

When the guidance content is a content requiring the pointing, thestanding position that does not interfere with the object OB isdetermined (in a step S304). Next, the posture control portion 594controls the actuator group 560 such that the robot 501 performs anapproach walk at a person and the head front 514 of the head portion 510turns to the direction of the person (in a step S306).

Next, the posture control portion 594 determines whether there is apositional relationship that a gesture is restricted (in a step S308).In a case of the positional relationship that the gesture is restricted,the posture control portion 594 controls the robot 501 to perform asecession walk (in a step S310), and performs the determination in thestep S308 again.

If not the positional relationship that the gesture is restricted, theposture control portion 594 determines the arm that performs thepointing (in a step S312). Next, the posture control portion 594determines whether the position capable of performing the pointing canbe determined (in a step S314). When the position capable of performingthe pointing cannot be determined, the voice guidance control portion596 controls the speaker 570 to output the voice guidance withoutpointing (in a step S316).

When the position capable of performing the pointing can be determined,as mentioned above, the posture control portion 594 determines an angleof the wrist direction (in a step S318), determines the waist/armdistribution ratio (in a step S320), determines the wrist position (in astep S322), and determines the hand posture (in a step S324). Then, theposture control portion determines whether the pointing interferes withthe person (in a step S326). When the pointing interferes with theperson, the posture control portion 594 controls the robot 501 toperform a secession walk (in a step S328), and returns to the step S318.

On the other hand, when the pointing does not interfere with the person,the voice guidance control portion 596 controls the speaker 570 tooutput the voice guidance while the posture control portion 594 controlsthe actuator group 560 to make the robot 10 form the posture for thepointing (in a step S330). Subsequently, the control portion 590determines whether the voice guidance is completed (in a step S332).When the voice guidance is not completed, the position of the robot 501is acquired based on the history of the operation of the actuator group560 and the analysis of the photographed image of the camera 512 (in astep S334), and returns to the step S318. When the voice guidance iscompleted, this flowchart at this time is terminated.

[Appeal Control]

The robot 501 may perform action that guides the person H to thesuitable area WA, before performing the voice guidance about object OB,as described below. FIG. 40 is a view showing a manner that the robot501 guides the person H to the suitable area WA. As shown in FIG. 40(A), the robot 501 stands in the suitable area WA first, and outputs avoice (“it is here” or the like) that appeals to come to a self-positionto the person H while pointing at the object OB. Then, as shown in FIG.40 (B), if the robot 501 recedes to the movable area MA according to theperson H approaching, and outputs the voice guidance about the object OBif the person H enters the suitable area WA. By such control, the robot501 can guide the person to a position easy to see the object OB.

FIG. 41 shows an example of a flowchart showing a flow of processingperformed when the robot 501 guides the person H to the suitable areaWA. First, the posture control portion 594 determines whether a personis present in the suitable area WA or the movable area MA (in a stepS400). When there is a person in the suitable area WA or the movablearea MA, this flowchart at this time is terminated. In this case,processing of the flowchart of FIG. 39 is performed, for example.

When there is no person in the suitable area WA or the movable area MA,the posture control portion 594 makes the robot 501 move into thesuitable area WA (in a step S402). Then, it is determined whether aperson is detected in a distant position by the environment recognitionportion 592 (in a step S404). The “distant position” may mean a positionoutside the suitable area WA and the movable area MA, and may mean aposition beyond a predetermined distance from the outer edges of thesuitable area WA and the movable area MA or beyond a predetermineddistance from the robot 501. When no person is detected in the distantposition, this flowchart at this time is terminated.

When a person is detected in the distant position, the robot 501 outputsthe voice appealing to the person to come to a self-position (in a stepS406). Then, the posture control portion 594 determines whether theperson approaching (in a step S408). When the person approaching, theposture control portion 594 makes the robot 501 retreat according to theperson approaching (in a step S410).

Next, the posture control portion 594 determines whether the personenters the suitable area WA (in a step S412). If the person enters thesuitable area WA, the voice guidance control portion 596 controls thespeaker 570 to start the voice guidance about the object OB (in a stepS414). In addition, when negative determination is obtained at the stepS408 or S412, returning to the determination processing of the stepS404.

According to the robot 501 of the above-described embodiment, before andafter moving by the processing of the interference calculation portion594A, etc., since the state that the extending direction (the pointingdirection) of the index finger portion 543 turns to the position OB1 ismaintained, the person who receives the guidance can grasp intuitivelythe direction that the robot 501 points. As a result, the robot 501 canguide more effectively the gaze of the person who receives the guidance.

Furthermore, according to the robot 501 of this embodiment, whenpointing to the direction of the specific position OB1 in the object OB,since the posture that the index finger portion 543 extends on thestraight line L connecting the rotation center 524A of the first armlink portion 532 in the shoulder joint portion 524 to the specificposition OB1 is formed, the person who receives the guidance can graspintuitively the direction that the robot 501 points. As a result, therobot 501 can guide more effectively the gaze of the person who receivesthe guidance.

Furthermore, according to the robot 501 of this embodiment, whenpointing to the direction of the specific position OB1 in the object OB,since the robot 501 performs the action that the index finger portion543 comes and goes on the straight line L while the state that the indexfinger portion 543 is extending on the straight line L is maintained,the person who receives the guidance can grasp still more nearlyintuitively the direction that the robot 501 points. As a result, therobot 501 can guide still more effectively the gaze of the person whoreceives the guidance.

Furthermore, according to the robot 501 of this embodiment, first, therobot 501 outputs the voice that appeals to come to a self-position tothe person H, recedes to the movable area MA according to the person Happroaching, and outputs the voice guidance about object OB if theperson H enters the suitable area WA, and accordingly, the robot 501 canguide the person to the position easy to see the object OB.

Furthermore, not limited to such the robot, the robot 501 may be a robotthat can move by hovercraft, etc., or may have one or three or more armportions.

Furthermore, the first embodiment to the fourth embodiment can becombined arbitrarily. Then, since it can imagine easily about thecombination, a detailed description is omitted here.

In addition, although the word “larger” or “more than” is used about thethreshold value, etc. in the above-described embodiments, is should benoted that the meaning of a “larger” or “more than” also includes ameaning of “equal to or larger” or “equal to or more than.”

A plurality of programs that are described in the above-describedembodiments may be stored in an HDD of the server for data distribution,and distributed to a system having the same structure as theembodiments. Furthermore, these programs may be stored in a storagemedium such as an optical disk of CD, DVD, BD (Blu-ray (registeredtrademark) Disc) or the like, a USB memory, a memory card, etc. andthen, such the storage medium may be sold or distributed. In a casewhere the plurality of programs downloaded via the above-describedserver or storage medium are installed to a system having the structureequal to the structure of the embodiments, it is possible to obtainadvantages equal to advantages according to the embodiments.

In the above, although the form for implementing the present inventionis described with using the embodiments, the present invention is notlimited to such the embodiments at all, and can add various modificationand substitution within a range that do not deviate from the gist of thepresent invention.

Furthermore, the specific numerical values and the utterance contentmentioned in this specification are only examples, and changeableproperly in accordance with the change of kind of the exhibition halland other specifications.

It is to be noted that an inside of the parentheses and the supplementsshow an example of a corresponding relationship with the embodiments foreasy understanding of the present invention, and do not limit thepresent invention.

An embodiment is a robot control system including a robot that outputsan utterance content to a user in an exhibition hall placing anexhibition, comprising: a recording module that records an inspectionaction of a user at a time of attendance of the user as a history; and afirst output module that makes the robot, when the user attends again,output an utterance content that is determined based on the history.

In the embodiment, the robot control system (100: reference numeralexemplifying a corresponding component or portion in the embodiments,and so forth) includes the robot (10, 501) that can perform anautonomous movement inside the exhibition hall that the exhibition (E,OB) is placed. The recording module (16, S9, 336) records whether eachuser inspects each exhibition in how long time period (inspection timeperiod), etc. as a history of inspection action. When the user attendsagain, the first output module (16, S27, S29) reads the history ofinspection action, determines an utterance content based on the history,and make the robot output the utterance content. For example, when thereis a record that the user inspects about the specific exhibition for acomparatively long time, the utterance content as “you seeing xxx well”may be output. For example, if there is a history of inspection actionthat the user only passes through the exhibition hall without seeingmost the exhibition, the utterance content such as “please see slowly”may be output.

According to the embodiment, since an utterance content is outputaccording to the history of inspection action of the user, it ispossible to provide appropriate guidance information for the user.

Another embodiment is a robot control system, wherein the first outputmodule makes an utterance content that is determined based on thehistory of inspection action at a last time attendance of the user beoutput.

In this embodiment, if there is a record that the user inspects aboutthe specific exhibition for a comparatively long time, for example, anutterance content such as “It seems you did see xxx well last time,please also see further exhibition this time” may be output. Forexample, if there is a history of inspection action that the user onlypasses through the exhibition hall without seeing most the exhibition,an utterance content such as “Although it seems you did not see verymuch last time, please see slowly this time” may be output.

According to this embodiment, since the utterance content that isdetermined based on the history of inspection action at the last timeattendance is output, since it is possible not only to provide theappropriate guidance information for the user but to give an impressionthat the robot is observing the user well, it is expectable to increasea sense of closeness for the robot of the user.

A further embodiment is a robot control system, wherein the utterancecontent includes a phrase that mentions the inspection action at thelast time attendance of the user.

In the further embodiment, the utterance content that includes a phrasementioning directly to the inspection action last time such as “it seemsyou did see xxx well last time”, or “it seems you did not see very muchlast time” may be output.

According to the further embodiment, since the utterance contentincluding the phrase that mentions the inspection action at the lasttime attendance of the user is output, it is possible to give a strongimpression that the robot is observing the user well, and it isexpectable to increase a sense of closeness for the robot of the user.

A still further embodiment is a robot control system, further comprisinga second output module (16, S61, S95) that makes the robot output anutterance content about the exhibition when a predetermined condition issatisfied.

A yet further embodiment is a robot control system, wherein thepredetermined condition includes at least one of that the user enters apredetermined range corresponding to an exhibition and that thedirection of the user turns to the exhibition.

According to the still further embodiment and the yet furtherembodiment, it is possible to provide the utterance content concerningan exhibition adequately when the user gets interested in theexhibition.

A further embodiment is a robot control method performed by a computerof a robot control system including a robot that outputs a utterancecontent to a user in an exhibition hall placing an exhibition,comprising steps of: recording an inspection action of a user at a timeof attendance of the user as a history; and making the robot, when theuser attends again, output an utterance content that is determined basedon the history.

According to the further embodiment, since an utterance content isoutput according to the history of inspection action of the user, it ispossible to provide appropriate guidance information for the user.

A still further embodiment is a robot control system including a robotcapable of autonomously moving in a space that an exhibition is placed,comprising: an acquiring module that acquires a position and a directionof a user in the space; a first determining module that determineswhether the user enters a predetermined range corresponding to theexhibition; a second determining module that determines whether thedirection of the user turns to the exhibition, and an outputting modulethat makes the robot output an utterance content about the exhibitionwhen it is determined that the user enters the predetermined range andthat the direction of the user turns to the exhibition.

In the still further embodiment, the robot (10, 501) of the robotcontrol system (100) does autonomous movement of the inside of the spaceplacing therein the exhibition (E, OB). The acquiring module (16, S53,S65) acquires a position and a direction that are detected by rangeimage sensors (12) installed on a ceiling of the space, for example. Thefirst determining module (16, S55) determines whether the position ofthe user is detected within the predetermined range corresponding to thecenter point (C) of the exhibition, for example. The second determiningmodule (16, S57) determines whether the direction of a body of the userturns to the center point of the exhibition, for example. If the userapproaches the exhibition and enters the predetermined range and turnsto the exhibition, the output module (16, S61, S95) applies an utterancecontent to the robot, and the robot outputs the utterance contentconcerning the exhibition to the user.

According to the still further embodiment, it is possible to provide theutterance content concerning an exhibition adequately when the user getsinterested in the exhibition.

A yet further embodiment is a robot control system, further comprising athird determining module that determines whether the user is out of thepredetermined range; and a stop module that stops the output of theutterance content when it is determined that the user is out of thepredetermined range.

In the yet further embodiment, it is determined by the third determiningmodule (16, S67) whether the user to whom the utterance content isoutput, for example, is out of the predetermined range. Then, the stopmodule (16, S69) stops the output of the utterance content if the userto whom the utterance is currently output moves to an outside of thepredetermined range, for example.

According to the yet further embodiment, since it is thought that theuser is not interested in the exhibition, it is possible to stop offerof the utterance content.

A further embodiment is a robot control system, further comprising apresuming module that presumes a degree of intimacy between the user andthe robot, and a determination module that determines an action of therobot based on a presumed degree of intimacy.

In the further embodiment, the presuming module (16, S89, S95) presumesthe depth (height) of the degree of intimacy between the user and therobot according to a level, for example. The determination module (16,S91, S93) determines the action such as a movement speed, etc., forexample, based on the degree of intimacy. For example, the robot movesto the user with the movement speed that is determined based on thedegree of intimacy, and outputs the utterance content to the user.

According to the further embodiment, since the action of the robotchanges according to the presumed degree of intimacy, the user canrealize how depending that the degree of intimacy with the robotdeepens.

A still further embodiment is a robot control system, wherein thedetermination module determines at least one of a reaction time untilthe robot begins to move, a movement speed when approaching, a distanceto the user and a standing position, and a waiting position.

A yet further embodiment is a robot control system, further comprising astoring module storing that an utterance content is output to the user,wherein the output modules outputs an utterance content different fromthe utterance content at the last time when it is determined that theuser to whom it is stored that the utterance content is output and thedirection of the user turns to the exhibition.

In the yet further embodiment, the storing module (16, S97, S99, S103)stores that the utterance content is output for each user when aplurality of users are in the space, for example. For example, to theuser to whom the utterance content has been output, an utterance contentthat is different from the last time is output.

According to the yet further embodiment, it is possible to prevent therobot from giving the same explanation to the same user repeatedly.Therefore, the user can acquire different knowledge at every seeing theexhibition.

A further embodiment is a robot control system, wherein the utterancecontent that is different from the last time includes an abstract of theutterance content already output to the user.

A still further embodiment is a robot control system, wherein thestoring module includes a stop storing module storing that the output ofthe utterance content is stopped, and the output module outputs anutterance content different from last time when it is determined thatthe user to whom it is stored that the output of the utterance contentis stopped enters the predetermined range and that the direction of theuser turns to the exhibition.

In the still further embodiment, when the user goes out of thepredetermined range and the output of the utterance content is stopped,the stop storing module (16, S99) stores that the output of theutterance content stopped. For example, at a time that an utterancecontent is to be output again to the user who left during outputting ofthe utterance content, an utterance content that is derived from theexhibition is output.

According to the still further embodiment, the user who did not hear thelast time utterance content to the last can acquire the knowledgederived from the exhibition.

A yet further embodiment is a robot control system, wherein the storingmodule includes a completion storing module storing that the output ofthe utterance content is completed, and the output module outputs anutterance content different from last time when it is determined thatthe user to whom it is stored that the output of the utterance contentis completed enters the predetermined range and that the direction ofthe user turns to the exhibition.

In the yet further embodiment, when the output of the utterance contentto the user is completed, the completion storing module (16, S97) storesthat the output of the utterance content is completed. For example, anutterance content that explains deeper contents to the exhibition isoutput to the user who listens to the explanation from the robot to thelast.

According to the yet further embodiment, the user who heard the lasttime utterance content to the last can deepen the knowledge over theexhibition more.

A further embodiment is a robot control system, further comprising afourth determining module that determines whether a further user is in acircumference when outputting the utterance content, wherein the storingmodule stores that the utterance content is output to the further userwhen it is determined that there is the further user in thecircumference.

In the further embodiment, the fourth determining module (16, S101)determines whether a further user exists in the circumference of theuser to whom the utterance content is being output, for example. If itis determined that the further user is in the circumference, it isthought that the utterance content is output also to the further user,and therefore, the storing module stores that the utterance content isoutput also to the further user.

According to the further embodiment, a user needs to cease to receiveoffer of the same utterance content repeatedly in the space that manyusers exist.

A still further embodiment is a robot control system, wherein the robotcomprises a pointing member for pointing to a direction, and the robotoutputs the utterance content while pointing at the exhibition.

In the still further embodiment, the pointing member (60, 64, 66, 543)for pointing to the direction is a hand, arm or the like of the robot,for example. For example, the robot outputs the utterance content in astate that the exhibition is pointed by the hand or the like.

According to the still further embodiment, it is possible to effectivelyprovide the utterance content about the exhibition with using a body ofthe robot.

A yet further embodiment is a robot control system, wherein the robot(501) further comprises an actuator (560) that drives the pointingmember, a moving portion (550) that makes a body portion that theactuator is attached move, and a control portion (594) that controls theactuator such that when making the pointing member point to a directionof the exhibition, at least a part of the pointing member extends on astraight line that connects a predetermined part of the body portion anda position of the exhibition.

According to the yet further embodiment, since the robot is controlledsuch that at least a part of the pointing member extends on the straightline connecting the predetermined part of the body portion and theposition of the exhibition, the user who receives guidance can graspintuitively the direction that the robot points. As a result, it ispossible to guide still more effectively the gaze of the user whoreceives guidance.

A further embodiment is a robot control system, wherein the controlportion controls the actuator such that a state that the exhibition islocated in the direction that the pointing member points to can bemaintained before and after moving of the body portion by the movingportion.

According to the further embodiment, since the state that the exhibitionis located in the direction that the pointing member points to ismaintained before and after the body portion moves by the movingportion, the user who receives the guidance can grasp intuitively thedirection that the robot points. As a result, it is possible to guidemore effectively the gaze of the user who receives the guidance.

A still further embodiment is a robot control system, further comprisinga detection portion (512, 592) that detects a position of the user,wherein the control portion controls the moving portion to make the bodyportion keep away from the user when the body portion is in an areacentering on the user.

According to the still further embodiment, since the robot comprises thedetection portion that detects the position of the user, and the controlportion controls the moving portion to make the body portion keep awayfrom the user when the body portion is in an area centering on the user,an interference with the user can be prevented.

A yet further embodiment is a robot control system, wherein the controlportion controls, when controlling the moving portion to keep away thebody portion from the user, the moving portion to make the body portionmove without changing the direction of the body portion, and then,controls the moving portion to make the body portion turn and move to atarget position that is determined based on the position of theexhibition.

According to the yet further embodiment, since the control portioncontrols, when controlling the moving portion to keep away the bodyportion from the user, the moving portion to make the body portion movewithout changing the direction of the body portion, and then, controlsthe moving portion to make the body portion turn and move to a targetposition that is determined based on the position of the exhibition, itis possible to prevent the robot interfering with the user by turning.

A further embodiment is an output control method in a robot controlsystem including a robot capable of autonomously moving in a space thatan exhibition is placed, wherein a processor of the robot control systemperforming: an acquiring step that acquires a position and a directionof a user in the space; a first determining step that determines whetherthe user enters a predetermined range corresponding to the exhibition; asecond determining step that determines whether the direction of theuser turns to the exhibition, and an outputting step that makes therobot output an utterance content about the exhibition when it isdetermined that the user enters the predetermined range and that thedirection of the user turns to the exhibition.

According to the further embodiment, it is possible to provide theutterance content concerning the exhibition adequately when the usergets interested in the exhibition.

In the above embodiment, when the user exists in the explainable rangeAi of the exhibition Ei, it is assumed that the user inspects theexhibition Ei. However, when the user exists in the explainable range Aiof the exhibition Ei, it may be assumed that the user looks atattentively the exhibition Ei, that is, the user views the exhibitionEi. In such an embodiment, “inspection” may be replaced with “viewing,”for example, “viewing action” instead of “inspection action,” or“viewing time period” instead of “inspection time period.”

Although the present invention has been described and illustrated indetail, it is clearly understood that the same is by way of illustrationand example only and is not to be taken by way of limitation, the spiritand scope of the present invention being limited only by the terms ofthe appended claims.

What is claimed is:
 1. A robot control system including a robot thatoutputs an utterance content to a user in an exhibition hall placing anexhibition, comprising: a recording module that records to a memorydevice an inspection action of a user at a time of attendance of theuser in the exhibition hall as a history, the history comprises theexhibition placed in the hall and an inspection time period spent by theuser for inspection as to the exhibition; and a first output modulethat, when the user attends again, determines an appropriate utterancecontent by using the history associated with the attending user, andmakes the robot output the determined utterance content.
 2. A robotcontrol system according to claim 1, wherein the first output modulemakes the utterance content that is determined based on the history ofinspection action at a last time attendance of the user be output.
 3. Arobot control system according to claim 2, wherein the utterance contentincludes a phrase that mentions the inspection action at the last timeattendance of the user.
 4. A robot control system according to claim 1,further comprising a second output module that makes the robot outputthe utterance content about the exhibition when a predeterminedcondition is satisfied.
 5. A robot control system according to claim 4,wherein the predetermined condition includes at least one of that theuser enters a predetermined range corresponding to the exhibition andthat the direction of the user turns to the exhibition.
 6. A robotcontrol system according to claim 1, wherein the history comprises aplurality of exhibitions placed in the hall and an inspection timeperiod spent by the user for inspection as to respective exhibitions. 7.A robot control method performed by a computer of a robot control systemincluding a robot that outputs an utterance content to a user in anexhibition hall placing an exhibition, comprising steps of: recording toa memory device an inspection action of the user at a time of attendanceof the user in the exhibition hall as a history, the history comprisesthe exhibition placed in the hall and an inspection time period spent bythe user for inspection as to the exhibition; when the user attendsagain, determining an appropriate utterance content by using the historyassociated with the attending user; and making the robot output thedetermined utterance content.
 8. A robot control method according toclaim 7, wherein the history comprises a plurality of exhibitions placedin the hall and an inspection time period spent by the user forinspection as to respective exhibitions.
 9. A robot control systemincluding a robot capable of autonomously moving in a space that anexhibition is placed, comprising: an acquiring module that acquires aposition and a direction of a user in the space; a first determiningmodule that determines whether the user enters a predetermined firstrange corresponding to the exhibition; a second determining module thatdetermines whether the direction of the user turns to the exhibition;and an outputting module that makes the robot output an utterancecontent about the exhibition when it is determined that the user entersthe predetermined first range and that the direction of the user turnsto the exhibition; a third determining module that determines whetherthe user is out of a second range; and a stop module that stops theoutput of the utterance content when it is determined that the user isout of the second range, wherein the second range surrounds thepredetermined first range and is broader than the predetermined firstrange.
 10. A robot control system according to claim 9, furthercomprising a presuming module that presumes a degree of intimacy betweenthe user and the robot, and a determination module that determines anaction of the robot based on the presumed degree of intimacy.
 11. Arobot control system according to claim 10, wherein the determinationmodule determines at least one of a reaction time until the robot beginsto move, a movement speed when approaching, a distance to the user and astanding position, and a waiting position.
 12. A robot control systemaccording to claim 9, further comprising a storing module storing thatthe utterance content is output to the user, wherein the outputtingmodule outputs the utterance content different from the utterancecontent at the last time when it is determined that the user to whom itis stored that the utterance content is output and the direction of theuser turns to the exhibition.
 13. A robot control system according toclaim 12, wherein the utterance content that is different from the lasttime includes an abstract of the utterance content already output to theuser.
 14. A robot control system according to claim 12, wherein thestoring module includes a stop storing module storing that the output ofthe utterance content is stopped, and the outputting module outputs theutterance content different from last time when it is determined thatthe user to whom it is stored that the output of the utterance contentis stopped enters the predetermined range and that the direction of theuser turns to the exhibition.
 15. A robot control system according toclaim 12, wherein the storing module includes a completion storingmodule storing that the output of the utterance content is completed,and the outputting module outputs the utterance content different fromlast time when it is determined that the user to whom it is stored thatthe output of the utterance content is completed enters thepredetermined range and that the direction of the user turns to theexhibition.
 16. A robot control system according to claim 12, furthercomprising a fourth determining module that determines whether a furtheruser is in a circumference when outputting the utterance content,wherein the storing module stores that the utterance content is outputto the further user when it is determined that there is the further userin the circumference.
 17. A robot control system according to claim 9,wherein the robot comprises a pointing member for pointing to adirection, and the robot outputs the utterance content while pointing atthe exhibition.
 18. A robot control system according to claim 17,wherein the robot further comprises an actuator that drives the pointingmember, a moving portion that makes a body portion that the actuator isattached move, and a control portion that controls the actuator suchthat when making the pointing member point to a direction of theexhibition, at least a part of the pointing member extends on a straightline that connects a predetermined part of the body portion and aposition of the exhibition.
 19. A robot control system according toclaim 18, wherein the control portion controls the actuator such that astate that the exhibition is located in the direction that the pointingmember points to can be maintained before and after moving of the bodyportion by the moving portion.
 20. A robot control system according toclaim 18, further comprising a detection portion that detects a positionof the user, wherein the control portion controls the moving portion tomake the body portion keep away from the user when the body portion isin an area centering on the user.
 21. A robot control system accordingto claim 20, wherein the control portion controls, when controlling themoving portion to keep away the body portion from the user, the movingportion to make the body portion move without changing the direction ofthe body portion, and then, controls the moving portion to make the bodyportion turn and move to a target position that is determined based onthe position of the exhibition.
 22. An output control method in a robotcontrol system including a robot capable of autonomously moving in aspace that an exhibition is placed, wherein a processor of the robotcontrol system performing: an acquiring step that acquires a positionand a direction of a user in the space; a first determining step thatdetermines whether the user enters a predetermined first rangecorresponding to the exhibition; a second determining step thatdetermines whether the direction of the user turns to the exhibition; anoutputting step that makes the robot output an utterance content aboutthe exhibition when it is determined that the user enters thepredetermined first range and that the direction of the user turns tothe exhibition; a third determining step that determines whether theuser is out of a second range; and a stopping step that stops the outputof the utterance content when it is determined that the user is out ofthe second range, wherein the second range surrounds the predeterminedfirst range and is broader than the predetermined first range.